Method and apparatus for ranging finding, orienting and/or positioning of single and/or multiple devices and/or device and method for orientation and positioning

ABSTRACT

A method and apparatus for ranging finding of signal transmitting devices is provided. The method of signal reception is digitally based only and does not require receivers that are analog measurement devices. Ranging can be achieved using a single pulse emitting device operating in range spaced relation with a minimum of a single signal transmitter and a single digital receiver and processing circuitry. In general a plurality of transmitting pulsed emitters may be ranged and positioned virtually simultaneously in 3-dimensions (XYZ coordinates) using a configuration of a plurality of digital receivers arranged in any fixed 3-dimensional configuration. Applications may involve at least one single transmitter to receiver design to determine range, or at least one transmitted reflecting signal off from an object to determine range.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 17/078,492, filed Oct. 23, 2020 which is a continuation of U.S. patent application Ser. No. 16/226,976, filed Dec. 20, 2018, which is a continuation of U.S. patent application Ser. No. 15/963,397, filed Apr. 26, 2018, (now abandoned) which is a continuation of U.S. patent application Ser. No. 15/092,898, filed Apr. 7, 2016, (now abandoned), which is a continuation of U.S. patent application Ser. No. 14/700,692, filed Apr. 30, 2015, (now abandoned), which is a continuation of U.S. patent application Ser. No. 13/189,878, filed Jul. 25, 2011, now U.S. Pat. No. 9,024,810, issued May 5, 2015, which is a continuation-in-part of International Application No. PCT/CA2010/000095, filed Jan. 27, 2010, which was filed in English and designated the U.S., the entire contents of which are incorporated herein by reference.

The present application is also related to and claims the benefit of priority to:

U.S. Provisional Patent Application No. 61/147,711; filed Jan. 27, 2009 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE OR MULTIPLE DEVICES”;

U.S. Provisional Patent Application No. 61/367,787; filed Jul. 26, 2010 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE AND/OR MULTIPLE DEVICES”;

U.S. Provisional Patent Application No. 61/369,994; filed Aug. 2, 2010 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE OR MULTIPLE DEVICES”; and

U.S. Provisional Patent Application No. 61/371,053; filed Aug. 5, 2010 entitled “A TOUCH-LESS TOGGLE/DIRECTIONAL LIGHT SWITCH AND DIMMER.”

This application is a continuation application of U.S. patent application Ser. No. 17/306,484, filed May 3, 2021 which is a continuation of and claims the priority of U.S. patent application Ser. No. 16/658,431, filed Oct. 19, 2019, entitled, “DEVICE AND METHOD FOR ORIENTATION AND POSITIONING”, which is a continuation of U.S. patent application Ser. No. 15/517,443, filed Apr. 6, 2017, entitled, “DEVICE AND METHOD FOR ORIENTATION AND POSITIONING”, now U.S. Pat. No. 10,452,157, issued Oct. 22, 2019, which is a U.S. National Stage Application of International Application No. PCT/CA2015/0510012, filed Oct. 6, 2015, which designated the U.S. and is entitled, “DEVICE AND METHOD FOR ORIENTATION AND POSITIONING”, which claims priority from U.S. Patent Application No. 62/060,769, filed Oct. 7, 2014, entitled DEVICE AND METHOD FOR ORIENTATION AND POSITIONING, the entire contents of which are incorporated herein by reference.

The U.S. patent application Ser. No. 17/306,484, filed May 3, 2021 is also a continuation of and claims the priority of U.S. patent application Ser. No. 16/924,784, filed Jul. 9, 2020, which is a continuation of U.S. patent application Ser. No. 16/431,091, filed Jun. 4, 2019, now U.S. Pat. No., 10,749,525, which is a continuation of U.S. patent application Ser. No. 15/967,065, filed Apr. 30, 2018, now U.S. Pat. No. 10,320,384, which is a continuation of U.S. patent application Ser. No. 15,315,695, filed Jun. 4, 2019, now abandoned, which is a U.S. National Stage Application of International Application No. PCT/CA2015/000383, filed Jun. 1, 2015, which designated the U.S., which claims priority of U.S. Provisional Application Nos. 62/007,134 and 62/005,686, filed Jun. 3, 2014 and Jun. 2, 2014, respectively, all of the foregoing entitled “TOUCH-LESS SWITCHING;”

U.S. Provisional Patent Application No. 61/147,711, filed Jan. 27, 2009 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE OR MULTIPLE DEVICES;”

PCT Patent Application CA2010/000095, filed Jan. 27, 2010 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE AND/OR MULTIPLE DEVICES” and designating the United States;

U.S. Provisional Patent Application No. 61/367,787, filed Jul. 26, 2010 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE AND/OR MULTIPLE DEVICES;”

U.S. Provisional Patent Application No. 61/369,994, filed August 2, 2010 entitled “A METHOD AND APPARATUS FOR RANGING FINDING, ORIENTING, AND POSITIONING OF SINGLE OR MULTIPLE DEVICES;”

U.S. Provisional Patent Application No. 61/371,053, filed Aug. 5, 2010 entitled “A TOUCH-LESS TOGGLE/DIRECTIONAL LIGHT SWITCH AND DIMMER;” and

U.S. Provisional Application 62/060,769, filed Oct. 7, 2014, entitled “DEVICE AND METHOD FOR ORIENTATION AND POSITIONING.”

The disclosures and claims set forth in the referenced applications are incorporated herein by reference.

BACKGROUND 1. Field of the Invention

The present disclosure relates to range finding of one or more signal transmitting devices, and hence to determining their orientation and position based on a transmitted signal therefrom. The present disclosure relates to sensing positions of objects.

2. Description of Related Art

Current methods to locate electromagnetic waves in three-dimensions rely on intensity, wavelength, and phase measurements using planar sensor arrays combined with sensor image processing algorithms. In lower frequency systems, measurements taken by planar sensor arrays are correlated to find the 3D location of electromagnetic wave sources. By measuring the phase shift of waves between sensors, the position of the source can be triangulated or trilaterated. Higher frequency systems in the visible light and infrared range typically use imaging systems to determine the 3D location of sources. Other systems for 3D location use active EM beams with sensors that measure the reflected waves like Light Detecting and Ranging (LIDAR) or radar systems, and are intended for long-range use. The emergence of 3D gaming devices has increased the desire for 3D positioning in short range for a variety of gaming functions including 3D object rendering and control to allow for a realistic real-time gaming experience.

Current methods to locate radio frequency waves rely upon a form of triangulation, whether a single directional antenna system or a phased array radar system with multiple antennas and signal processing algorithms. A single antenna typically monitors signal amplitude to find the range of the radio frequency source, and two or more fixed antennas or a single rotating antenna to find the direction. There is usually no consistent approach to operate these systems over long range, nor is there a reliable method of processing ubiquitous radio signals in short range without the complexity of multi-path fading associated with reflecting waves from the surrounding environment. Attempts to use higher frequencies with coded modulations and lower signal power can reduce multipath effects but not enough to all for high resolution positioning of a radio transmitter source.

The current state of the art for sensing infrared sources in 3D employs imaging systems that take successive pictures of the surrounding area. These imaging systems are limited to a specific field of view (FOV) in a relatively short range and incorporate scanning algorithms and image processing for target tracking and identification. Such systems also require longer signal processing times depending on the resolution required and the number of imaging scanners involved, and hence are of limited use for real-time control applications. Complex image processing algorithms must be incorporated to determine the 3D position of an IR source to separate from ambient sources. Lensing systems are also subject to system focus, objects outside of the focus of the system will be obscured requiring a focus time to correct. The combination of a wide FOV, focus time, image processing algorithms, and multiple sensors creates a complex, high-cost system with many components to determine the 3D location of IR sources.

Light detecting and ranging (LIDAR) systems, or laser radar function by sending out pulses of light and processing the returned signals. By measuring the time of the photon flight, LIDAR systems spatially derive objects in the surrounding environment. Such systems also include a laser pulse at different frequencies, such that the relative signal strength of the returned wavelengths measure characteristics of the atmosphere such as gas composition, but not for ranging purposes. Unintended reflecting objects and changing gas properties will interfere with the ranging performance as they are intended mainly for long-range tracking applications. Time of flight tracking in the short range is not considered practical.

Lately, the emergence of 3D graphical games has increased a desire for 3D wireless devices allowing users to interface with games with built-in 3D features. There is also a need for faster rates of data for positioning in 3D, to allow users to have a more natural interaction with the computer, providing smoother positioning in a substantially delay-free manner. Also needed is a higher resolution positioning for increasingly sophisticated games and interfaces with high- resolution computer screens. However, there is an increasing need for devices that are truly wireless and allow multiple users to interface with the same interface screen and with a variety of controller functions. Gaming functions like user identity (for multi-user games), switching, pointing, 3D object control, and other 3D rendering functions for virtual reality.

Some wireless interface devices operate at longer ranges (for example, about one to three metres) from the computer screen and are based on infra-red and/or acoustic media to transmit signals that are used to locate the transmitter in 3D space. The signals are received by a base receiver that triangulates the position of the hand-held transmitting device based on time-delays. These devices are suitable for disabled users, and for users who require an interface over a wider volume of space such as for gaming. These technologies generally have limited range of operation and commonly require that a power cable be tethered to the hand-held device to provide power and be operable to switch signals between the handheld device and a base receiver. Accordingly, these devices are rather awkward to use as they are not fully wireless, or are intended to provide a 2D screen output and have no ability to do ranging.

Existing interface or gaming systems (like computer mice and joysticks) that display absolute or relative position introduce some kind of mechanical or data-link delay that lowers the presentation speed to any display or monitoring device. Accordingly, there is a need for systems and methods of sensing position in 2D and 3D that increase the rate at which absolute position data is presented on a display for multiple objects and icons viewed on a computer screen.

In the field of golf swing analysis many inventions have described using IR transmitters and receivers to begin a timing sequence of start of swing and end of swing. In particular the patent U.S. Pat. No. 6,821,211 describes a system where the objective is to measure a start and stop time hence the speed and angle of the golf club path, depending on the IR emitter and receiver configuration. The offset alignment and height of the club swing is described in patent US7329193 which describes an IR timing starter and the use of ultra-sonic pulses for ranging the club foot inside a swing sensing corridor. There is no embodiment in the prior-art that mentions use of the signal itself configured with a signal strength code that determines the range of the swinging club to the mat.

US Navy patent U.S. Pat. No. 4,851,661 discusses using power levels and thresholds for edge detection and angle offset measurement. This technique mentioned in prior art is crude but defines a simplistic method of using power levels set by multiple IR LED's being turned-on at different times, ultimately to detect and approaching robot, and for measuring the offset angle. This approach is not used for range measurement in any way.

Optical navigation is an intuitive and precise way to track moving objects. The optical approach is intuitive because our own human stereo vision system calculates object locations and trajectories by optical triangulation. The precision of optical navigation is due to the very short wavelength of electromagnetic radiation in comparison with typical object dimensions, negligible latency in short distance measurements due to the extremely large speed of light and relative immunity to interference.

Optical navigation typically employs several cameras to determine the position or trajectory of an object in an environment by studying images of the object in the environment. Such optical capturing or tracking systems are commonly referred to as optical motion capture (MC) systems. In general, motion capture tends to be computationally expensive because of significant image pre-and post-processing requirements, as well as additional computation associated with segmentation and implementation of algorithms, see for example U.S. Pat. No. 6,324,296 to McSheery.

Low-cost portable computing devices such as handheld or palm-sized computers can support local communication between nearby computers, or more generally can support wireless network or internetwork communications. Users equipped with suitable portable computers can, for example, exchange e-mail, browse the web, utilize mapping software, control nearby computer peripherals (e.g. printers), or receive information from local devices (e.g. job status of a printer). The flexibility and utility of various applications can be enhanced if the precise spatial location of the portable computing device is known. Knowing the location of the portable computing device (with a precision of several meters to less than 1 meter, or so) permits construction of user specific maps, transfer of location information to others, and receipt of location information for nearby computational or real world resources (e.g. answering such questions as “where is the nearest printer” or “where is the nearest coffee shop”). For this reason, having easily determinable and reliable position information would be a useful feature.

However, spatial localization with low cost devices can be difficult. Devices incorporating GPS receivers often do not work indoors because of poor radio reception and can require a substantial amount of time to determine position with a required accuracy. In many areas, there may not be any differential GPS availability to gain the necessary meter level precision for greatest utility. Other wireless schemes for localizing spatial position are generally not sufficiently precise (e.g. digital cellular telephone service areas with 1000 meter errors), or too expensive (inertial navigation systems).

It would be desirable to provide a novel approach to location sensing to overcome at least some of the drawbacks of known techniques, or at least that provides a useful alternative.

SUMMARY OF THE INVENTION

The following presents a simplified summary of the general inventive concept herein to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is not intended to restrict key or critical elements of the invention or to delineate the scope of the invention. Furthermore, any one element feature, or action of any aspect or exemplary embodiment may be combined with any one or more elements from the same or other aspects or exemplary embodiments, herein and throughout the disclosure and claims.

In an aspect, there is provided a method of locating an emitter, comprising:

-   -   enabling an emitter to emit at least one locating signal, the         locating signal including, at least in part, a plurality of         discrete pulses in a train of pulses;     -   enabling each of a plurality of spaced receivers, at a sensing         location, to receive the locating signal, each of the receivers         having an angular position value associated with a designated         angle of the receiver relative to a reference axis of the         sensing location;     -   processing the locating signal received at each receiver to form         a pulse value in relation to a count of pulses above a pulse         strength threshold, and correlating the pulse value with the         angular position value to form a pulse count value;     -   identifying an aligned receiver associated with a maximum pulse         count value as the receiver aligned with the emitter, and         attributing the aligned receiver's angular position value to an         angular location value of the emitter, relative to the reference         axis.

Some exemplary embodiments may further comprise enabling the emitter to configure a minimum strength of each pulse according to the pulse strength threshold.

Some exemplary embodiments may further comprise determining the maximum pulse count value according to:

Maximum Pulse Count Value=SUM[A[i]*E[i]]/SUM [E[i]], for i=1, . . . , N

for “i” being the index of each receiver, and N is the total number of receivers;

A[i]is the angular position value of the receiver “i”; and

E[i]is the pulse count value of the receiver “i”.

Some exemplary embodiments may further comprise:

-   -   enabling the emitter to change the strength of each pulse from         one pulse to another along the train of pulses; and     -   attributing the maximum pulse count value to a range value of         the emitter relative to the sensing location.

In some exemplary embodiments, the maximum pulse count value may be determined according to:

Maximum Pulse Count Value=MAX [E[i]], at A[k], for i=1, . . . , N,

where “i” is an index value corresponding to each receiver, and N is a total number of receivers,

A[i]is the angular position value of the receiver “i”.

E[i]is the pulse count value of the receiver “i”.

“k” is the aligned receiver, and

A[k]is the angular location value.

Some exemplary embodiments may further comprise enabling the emitter to emit an emitter identifier.

Some exemplary embodiments may further comprise enabling the emitter to emit the emitter identifier in the locating signal.

Some exemplary embodiments may further comprise enabling the emitter to emit the emitter identifier as a series of pulses ahead of the train of pulses.

Some exemplary embodiments may further comprise emitting the emitter identifier in an emitter identifier signal different from the locating signal.

Some exemplary embodiments may further comprise enabling the receiver to identify the emitter by the emitter identifier.

Some exemplary embodiments may further comprise enabling the emitter to emit the train of pulses in a single burst, with the pulses having the same or different strengths.

Some exemplary embodiments may further comprise enabling the emitter to emit repeated trains of pulses in repeating single bursts.

Some exemplary embodiments may further comprise enabling the emitter to emit the emitter identifier to include a location code.

Some exemplary embodiments may further comprise accessing the location code from an addressable network source and/or from memory.

Some exemplary embodiments may further comprise enabling the emitter to emit the locating signal intermittently, continuously or following receipt of an interrogatory or synchronizing signal.

Some exemplary embodiments may further comprise enabling the emitter to emit the locating signal at a carrier frequency selected from the group comprising: near infrared, far infrared, visible, ultra-violet, high frequency radio, ultra wideband radio, and ultrasonic.

Some exemplary embodiments may further comprise enabling a first object, carrying the receiver, to travel relative to, toward or away from the emitter.

Some exemplary embodiments may further comprise enabling a second object, carrying the emitter, to travel relative to, toward or away from the receiver.

Some exemplary embodiments may further comprise, for each of the first and the second emitters, the steps as defined in one or more of the aspects and/or exemplary embodiments of the present disclosure.

In another aspect, there is provided a method of locating a first emitter and a second emitter, comprising:

-   -   enabling each of the first and second emitters to emit,         respectively, at least one first and second locating signal, the         first and second locating signals each including, at least in         part, a plurality of discrete pulses in a train of pulses;     -   enabling selected ones of a plurality of spaced receivers, at a         sensing location, to receive the first and second locating         signals, each of the receivers having an angular position value         associated with a designated angle of the receiver, relative to         a reference axis of the sensing location;     -   processing the first and second locating signals to form         respective first and second pulse values in relation to first         and second counts of pulses above a pulse strength threshold,         and correlating the first and second pulse values with the         corresponding receiver's angular position value to form first         and second pulse count values;     -   identifying a first aligned receiver associated with a first         maximum pulse count value as the first receiver aligned with the         first emitter, and attributing the first aligned receiver's         angular position value to an angular location value of the first         emitter relative to the reference axis; and     -   identifying a second aligned receiver associated with a second         maximum count value as the second receiver aligned with the         second emitter, and attributing the angular position value of         the second aligned receiver to an angular location value of the         second emitter relative to the reference axis.     -   Some exemplary embodiments may further comprise the first and         second emitters to configure a minimum strength of each pulse         according to the pulse strength threshold.

Some exemplary embodiments may further comprise:

-   -   enabling the first and second emitters to change the strength of         each pulse from one pulse to another along the train of pulses;     -   attributing the first maximum pulse count value to a first range         value of the first emitter, relative to the reference axis; and     -   attributing the second maximum point count value to a second         range value of the second emitter, relative to the reference         axis.

Some exemplary embodiments may further comprise enabling the first and second emitters to emit a common locating signal.

In another aspect, there is provided a beacon device, comprising a plurality of emitters distributed along an emitter surface, each to emit at least one locating signal along a unique axis, the locating signal including, at least in part, a plurality of discrete pulses in a train of pulses.

In some exemplary embodiments, the emitters may be distributed in a symmetric or asymmetric, spatial and/or or angular pattern along the emitter surface.

Some exemplary embodiments may further comprise a trigger circuit responsive to an input to enable the beacon processor to initiate the locating signal.

In some exemplary embodiments, the beacon may be configured to receive or generate a synchronizing signal to control timing of the locating signal.

In some exemplary embodiments, the emitter surface may be curved or angled.

In some exemplary embodiments, the emitter surface being, at least in part, spherical, prism, pyramidal, cylindrical, and/or conical.

In some exemplary embodiments, the emitter surface may be, at least in part, spherical, with the emitters being distributed on the surface.

In another aspect, there is provided a device for locating an emitter, comprising a plurality of spaced receivers, at a sensing location, to receive at least one locating signal from the emitter, each of the receivers having an angular position value associated with a designated angle of the receiver relative to a reference axis of the sensing location, the locating signal including, at least in part, a plurality of discrete pulses in a train of pulses, at least one processor configured to:

-   -   process the locating signal received at each receiver to form a         pulse value in relation to a count of pulses above a pulse         strength threshold;     -   correlate the pulse value with the angular position value to         form a pulse count value, and     -   identify an aligned receiver associated with a maximum pulse         count value as the receiver aligned with the emitter; and     -   attribute the angular position value of the aligned receiver to         an angular location value of the emitter relative to the         reference axis.

In some exemplary embodiments, the strength of each pulse in the locating signal, received by the receiver, changes from one pulse to another along the train of pulses. In this case, the at least one processor configured to attribute the maximum pulse count value to a range value of the emitter relative to the sensing location.

In another aspect, there is provided a locating device comprising a plurality of spaced receivers positioned on a receiver surface at a sensing location, to receive at least one locating signal from a beacon device as defined in the present disclosure, each of the receivers having an angular position value associated with a designated angle of the receiver relative to a reference axis of the sensing location, the locating signal including, at least in part, a plurality of discrete pulses in a train of pulses, at least one processor configured to:

-   -   process the locating signal received at each receiver to form a         pulse value in relation to a count of pulses above a pulse         strength threshold;     -   correlate the pulse value with the angular position value to         form a pulse count value, and     -   identify an aligned receiver associated with a maximum pulse         count value, as the receiver aligned with the beacon device, and     -   attribute the angular position value of the aligned receiver to         an angular location value of the beacon device relative to the         reference axis.

In some exemplary embodiments, the strength of each pulse in the locating signal, received by the receiver, changes from one pulse to another along the train of pulses; the at least one processor configured to attribute the maximum pulse count value to a range value of the emitter relative to the sensing location.

Some exemplary embodiments may further comprise an emitter configured to emit an interrogation signal to be recognized by the beacon device, to cause the beacon device to emit the locating signal.

In some exemplary embodiments, the receiver surface may be, at least in part, curved or angled.

In some exemplary embodiments, the receiver surface may be, at least in part, spherical, prism, pyramidal, cylindrical, and/or conical.

In some exemplary embodiments, the receiving surface may be, at least in part, spherical, the receivers being distributed on the surface.

In some exemplary embodiments, the receiving surface may be, at least in part, spherical, the receivers being distributed on the surface.

In another aspect, there is provided an assembly of interactive objects, comprising:

-   -   a first object having at least one first emitter and at least         one first receiver; and     -   a second object having at least one second emitter and at least         one second receiver;     -   the at least one first emitter and at least one second receiver         carrying out a method as defined in one or more of the aspects         and/or exemplary embodiments as defined in the present         disclosure; and     -   the at least one second emitter and at least one first receiver         carrying out a method as defined in one or more of the aspects         and/or exemplary embodiments as defined in the present         disclosure.

In some exemplary embodiments, the first and second objects may be selected from the group comprising:

i) motorized objects capable of moving relative to one another;

ii) motorized object and one or more stationary object;

iii) motorized toys capable of moving relative to one another;

iv) a movable device and a reference unit therefor;

v) a robotic device and a reference unit therefor;

vi) a robotic vacuum and a reference unit therefor;

vii) a camera, cell phone, vehicle, appliance and/or accessory, and a reference unit therefor;

viii) a movable sport object from any one of archery, model aircraft, badminton, football, baseball, volleyball, rugby, tennis, basketball, golf, hockey, cricket, squash, tennis;

ix) a weapon and/or a projectile reference unit therefor; and

x) a wearable identity tag and a reference unit therefor.

In another aspect, there is provided a method for a locator configuration to locate a locating signal emitter, comprising:

providing a plurality of spaced receivers, including a group of receivers in respective locating signal-receiving angular positions, each of the receivers having an angular position coordinate value, stored in memory, associated with a designated angle of the receiver relative to a reference axis;

enabling each receiver in the group of receivers to receive at least one locating signal from the locating signal emitter, the locating signal including, at least in part, a plurality of pulses in at least one train of pulses;

enabling at least one locator processor, in communication with the spaced receivers, at a first clock increment, to:

-   -   process the locating signal received at each receiver in the         group of receivers, to form a pulse count value in relation to a         count of pulses above a pulse strength threshold;     -   form a pulse count profile whose coordinates include each pulse         count value and the corresponding angular location accessed from         memory; and to     -   attribute a designated angular position coordinate value         corresponding to a maximum pulse count value in the pulse count         profile as a location value representative of at least the         heading of the emitter.

In some exemplary embodiments, the pulses in the train of pulses vary in pulse strength from one pulse to another, further comprising enabling the at least one locator processor to attribute a range value to the locating signal emitter, according to the maximum pulse count value. The processor may be enabled to attribute at least the heading value to an emitter identifier to form a first set of emitter identity coordinates, and to store the first set in memory. The first set of coordinates may include the range value. The processor may be enabled for at least a second clock increment to form a second set of emitter identity coordinates, and to store the second set in memory. The receiver may be enabled to receive the emitter identifier from the emitter or from memory.

In some exemplary embodiments, the processor may be configured to calculate the angular position value according to:

Angular Position Value=SUM[A[i]*E[i]]/SUM[E[i]],

for i=1, . . . , N

where “i” is the index of each receiver;

N is the total number of receivers;

A[i]is the angular position value of the receiver “i”; and

E[i]is the pulse count value of the receiver “i”.

In some exemplary embodiments, the designated angular position value may correspond to an angular position value of a receiver registering the maximum pulse count value. The designated angular position value may be adjacent or between one or more neighboring angular position values of one or two receivers.

Some exemplary embodiments may further comprise enabling at least one emitter processor, in communication with the emitter, to emit the at least one locating signal with or without the emitter identifier. The emitter processor may be enabled to configure a minimum strength of each pulse according to the pulse strength threshold. The emitter may be enabled to change the strength of each pulse, or to fix the strength of each pulse, from one pulse to another along the train of pulses. The emitter processor may be enabled to configure the emitter to emit the emitter identifier in the locating signal. The emitter identifier may be ahead of the train of pulses.

In some exemplary embodiments, the emitter identifier may be, or be in, an emitter identifier signal different from the locating signal. The locating signal may include a single train of pulses in repeating single bursts. The locating signal may include repeating trains of pulses in repeating single bursts.

Some exemplary embodiments may further comprise enabling the emitter processor to configure the emitter to emit the locating signal intermittently, continuously or following receipt of an interrogatory or synchronizing signal. The emitter processor may be enabled to configure the emitter to emit the locating signal at a carrier frequency selected from the group comprising: near infrared, far infrared, visible, ultra-violet, high frequency radio, ultra-wideband radio, and ultrasonic.

Some exemplary embodiments may further comprise enabling the locator processor to initiate an action in relation to the first and/or second sets of coordinates. The initiating an action may include deploying a drive train, or issuing an instruction. The deploying a drive train may include instructing the drive train to move toward, or away from, the emitter. The instruction may be a written message, such as an SMS text or the like, an audio or a graphical message. Further, the action may be configured according to a received instruction.

In some exemplary embodiments, the instruction may be retrieved from memory, the locating signal or a received instructional signal.

In some exemplary embodiments, the emitters may be located over one or more surface regions of an object, wherein the locating of an emitter identifies an orientation of the object. The locating of an emitter may identify a portion of the object facing the receivers.

In some exemplary embodiments, the receivers are aligned, at least in part, along a curve relative to the reference axis.

In some exemplary embodiments, the receivers may organized in adjacent rows, wherein the receivers in each row receive locating signals at different angular positions corresponding to different heading angle values, at a common designated elevation angle, of the emitter.

In some exemplary embodiments, the receivers may be organized in adjacent rows, wherein the receivers in each row receive locating signals at different angular positions corresponding to different heading angle values, at a common designated elevation angle, of the emitter, according to:

Heading=SUM[A[i]*E[i,j]]/SUM[E[i,j]], for i=1, . . . , N

Elevation=SUM[B[j]*E[i,j]]/SUM[E[i,j]], for j=1, M

for (i,j) being the index of each receiver, and N is the total number of heading receiver elements, and M is the total number of elevation receiver elements.

A[i]is the fixed heading angle of the receiver element “i”.

B[j]is the fixed elevation angle of the receiver element “j”.

E[i,j]is the IR pulse energy received at receiver element “(i,j)”.

In another aspect, there is provided an assembly comprising a first object and a second object, each of the first and second objects including at least one locator processor in communication with a plurality of receivers and configured to carry out one or more method actions as defined in the present disclosure and/or claims, and at least one emitter processor in communication with at least one emitter and configured to carry out one or more method actions defined in the present disclosure and/or claims herein.

In another aspect, there is provided a system for locating an emitter, comprising:

a plurality of spaced receivers, each of the receivers having an angular position coordinate value, stored in memory, associated with a designated angle of the receiver relative to a reference axis;

each receiver configured to receive at least one locating signal from the emitter, the locating signal including, at least in part, a plurality of pulses in at least one train of pulses;

at least one locator processor, in communication with the spaced receivers, the at least one locator processor configured to:

-   -   process the locating signal received at each receiver in a group         of receivers in respective locating signal-receiving positions,         to form a pulse count value in relation to a count of pulses         above a pulse strength threshold;     -   form a pulse count profile whose coordinates include the pulse         count values and corresponding angular locations; and     -   attribute a designated angular position coordinate value,         corresponding to a maximum pulse count value in the pulse count         profile, as a location value representative of at least the         heading of the emitter.

In some exemplary embodiments, the pulses in the train of pulses may vary in pulse strength from one pulse to another, the locator processor may be configured to attribute a range value to the locating signal emitter, according to the maximum pulse count value. The locator processor may be configured to attribute at least the heading value to an emitter identifier to form a first set of emitter locating coordinates, and to store the first set in memory. The first set may include the range value.

In some exemplary embodiments, the locator processor may be configured, for at least a second clock increment, to form a second set of emitter locating coordinates, and to store the second set in memory. The locator processor may be configured to access the emitter identifier from the emitter or from memory.

In some exemplary embodiments, the locator processor may be configured to calculate the angular position value according to:

Angular Position Value=SUM[A[i]*E[i]]/SUM[E[i]],

for i=1, N

where “i” is the index of each receiver;

N is the total number of receivers;

A[i]is the angular position value of the receiver “i”; and

E[i]is the pulse count value of the receiver “i”.

In some exemplary embodiments, the designated angular position value may correspond to an angular position value of a receiver registering the maximum pulse count value. The designated angular position value may be adjacent an angular position value of at least one receiver.

Some exemplary embodiments may further comprise at least one emitter processor, in communication with the emitter, and configured to enable the emitter to emit the locating signal with or without the emitter identifier.

In some exemplary embodiments, the emitter processor may be further configured to set a minimum strength of each pulse according to the pulse strength threshold. The emitter processor may be configured to change the strength of each pulse, or to fix the strength of each pulse, from one pulse to another along the train of pulses. The emitter processor may be configured to enable the emitter to emit the emitter identifier in the locating signal. The emitter identifier may be ahead of the train of pulses. The emitter identifier may be in an emitter identifier signal different from the locating signal.

In some exemplary embodiments, the locating signal may include a single train of pulses in repeating single bursts. The locating signal may include repeating trains of pulses in repeating single bursts. The emitter processor may be configured to enable the emitter to emit the locating signal intermittently, continuously or following receipt of an interrogatory or synchronizing signal. The emitter processor may be configured to enable the emitter to emit the locating signal at a carrier frequency selected from the group comprising: near infrared, far infrared, visible, ultra-violet, high frequency radio, ultra-wideband radio, and ultrasonic.

In some exemplary embodiments, the locator processor may be configured to initiate an action in relation to the first and or second sets of coordinates. The action may include deploying a drive train. The action may be a text, an audio message, or graphical message. The local processor may be configured to select the action according to a received instruction. The received instruction may be retrieved from memory, the locating signal or a received instructional signal. The deploying a drive train may include instructing the drive train to move toward, and/or away from, the emitter.

Some exemplary embodiments may further comprise the drive train.

Some exemplary embodiments may further comprise a beacon with a body defining one or more surface regions, further comprising a plurality of the emitters located on said one or more surface regions. The receivers may be aligned, at least in part, along a curve relative to the reference axis. The receivers may be organized in adjacent rows, wherein the receivers in each row receive locating signals at different angular positions corresponding to different heading angle values, at a common designated elevation angle, of the emitter.

In some exemplary embodiments, the receivers are organized in adjacent rows, wherein the receivers in each row receive locating signals at different angular positions corresponding to different heading angle values, at a common designated elevation angle, of the emitter, according to:

Heading=SUM[A[i]*E[i,j]]/SUM[E[i,j]], for i=1, N

Elevation=SUM[B[j]*E[i,j]]/SUM[E[i,j]], for j=1, M

for (i,j) being the index of each receiver, and N is the total number of heading receiver elements, and M is the total number of elevation receiver elements.

A[i]is the fixed heading angle of the receiver element “i”.

B[j]is the fixed elevation angle of the receiver element “j”.

E[i,j]is the IR pulse energy received at receiver element “(i,j)”.

In another aspect, there is provided an assembly comprising first and second objects, wherein the first object comprises the at least one emitter and at least one emitter processor as disclosed in the disclosure and/or claims herein, the second object comprising the plurality of receivers and at least one locator processor as disclosed in the disclosure and/or claims herein. The first and second objects may be selected from the group comprising:

i) motorized objects capable of moving relative to one another;

ii) motorized object and one or more stationary object;

iii) motorized toys capable of moving relative to one another;

iv) a movable device and a reference unit therefor;

v) a robotic device and a reference unit therefor;

vi) a robotic vacuum and a reference unit therefor;

vii) a camera, cell phone, vehicle, appliance and/or accessory, and a reference unit therefor;

viii) a movable sport object from any one of archery, model aircraft, badminton, football, baseball, volleyball, rugby, tennis, basketball, golf, hockey, cricket, squash, tennis;

ix) a weapon and/or a projectile reference unit therefor;

x) a drone and a reference unit therefor; and

xi) a wearable identity tag and a reference unit therefor.

In another aspect, there is provided a locator device comprising a plurality of receivers and at least one locator processor as defined in the disclosure and/or claims herein.

In another aspect, there is provided a beacon device comprising at least one emitter and at least one emitter processor as defined in the disclosure and/or claims herein.

In another aspect, there is provided a method of locating a first emitter and a second emitter, comprising:

a. enabling each of a plurality of spaced receivers, relative to a sensing location, to receive a first locating signal from a first emitter, and a second locating signal from a second emitter, the first locating signal including, at least in part, a plurality of pulses in a first train of pulses, the second locating signal including, at least in part, a plurality of pulses in a second train of pulses, each of the receivers having an angular position value associated with a designated angle of the receiver relative to a reference axis; and

b. enabling a processor to:

-   -   1. process the first and second locating signals received at         each receiver to form:         -   a. a first pulse count value in relation to a first count of             pulses above a pulse strength threshold to form a first             pulse count profile from the first pulse count values; and         -   b. a second pulse count value in relation to a second count             of pulses above a pulse strength threshold to form a second             first pulse count profile from the second pulse count             values; and     -   2. attribute a location of the first emitter to a first         designated angular position value corresponding to a first         maximum pulse count value in the first pulse count profile; and     -   3. attribute a location of the second emitter to a second         designated angular position value corresponding to a second         maximum pulse count value in the second pulse count profile.

In some exemplary embodiments, the first and second locating signals may be the same.

In another aspect, there provided a beacon device, comprising a plurality of emitters distributed along an emitter surface, each to emit at least one locating signal along a unique axis. The locating signal may include, at least in part, a plurality of discrete pulses in a train of pulses.

In some exemplary embodiments, the emitters may be distributed in a symmetric or asymmetric, spatial and/or or angular pattern along the emitter surface.

Some exemplary embodiments may further comprise a beacon configured processor to initiate the locating signal. The beacon processor may be configured to receive or generate a synchronizing signal to control timing of the locating signal.

In some exemplary embodiments, the emitter surface may be curved or angled. The emitter surface may be, at least in part, spherical, prism, pyramidal, cylindrical, and/or conical. The may be distributed on the surface.

In another aspect, there is provided a locating device comprising a plurality of spaced receivers positioned on a receiver surface relative to a sensing location, to receive at least one locating signal from a beacon device as defined in the disclosure and/or claims herein, each of the receivers having an angular position value associated with a designated angle of the receiver relative to a reference axis of the sensing location, the locating signal including, at least in part, a plurality of discrete pulses in at least one train of pulses, and at least one processor configured to:

-   -   process the locating signal received at each receiver to form a         pulse value in relation to a count of pulses above a pulse         strength threshold;     -   correlate the pulse value with the angular position value to         form a pulse count value, and

identify an aligned receiver associated with a maximum pulse count value, as the receiver aligned with the beacon device, and

attribute the angular position value of the aligned receiver to an angular location value of the beacon device relative to the reference axis.

In some exemplary embodiments, the strength of each pulse in the locating signal may change from one pulse to another along the train of pulses. The at least one processor may be configured to attribute the maximum pulse count value to a range value of the emitter relative to the sensing location.

Some exemplary embodiments may further comprise an interrogation emitter configured to emit an interrogation signal to be recognized by the beacon device, to cause the beacon device to emit the locating signal. A drive train may be provided to be responsive to an instruction signal to move the device relative to the beacon.

In another aspect, there is provided a device for locating at least one emitter, comprising an array of receivers configured in different angular positions about the array relative to a corresponding array location axis, to receive a signal from the emitter having at least one burst containing a train of pulses, and at least one processor configured to profile pulse count values at each receiver, from one receiver to another in the array in relation to their respective angular positions, to designate a maximum peak angular position associated with a maximum pulse count value, and to attribute the peak angular position to an angular emitter location.

In some exemplary embodiments, the peak angular position may be associated with a weighted average of pulse count values for a designated time. The angular emitter location may be linked to the peak angular position of the receiver registering a maximum pulse count value. Each pulse count value may be associated with a count of pulses received by the receiver, according to successive changes of state of the receiver for each pulse received. Each pulse count value may be associated with a time period during which the receiver remains continuously in an ON state for the train of received pulses.

In some exemplary embodiments, the processor may be configured to plot a path toward at least one designated waypoint, according to the angular emitter location, and to issue one or more instructions to initiate movement toward the waypoint. A drive train be provided and configured to move the device toward the waypoint.

In some exemplary embodiments, the processor may be configured to issue instructions for one or more autonomous functions internal or external to the device.

In some exemplary embodiments, a plurality of the emitters may be located at separate locations in an interior or exterior region, thereby to define an associated signal-receiving zone for the receiver array.

In another aspect, there is provided a device as defined herein, wherein the device may be selected from the group comprising;

a. a motorized object;

b. a motorized toy;

c. a movable device;

d. a robotic device;

e. a robotic vacuum;

f. a camera;

g. a cell phone or smart phone;

h. an appliance;

i. a movable sport object from any one of archery, model aircraft, badminton, football, baseball, volleyball, rugby, tennis, basketball, golf, hockey, cricket, squash, tennis;

j. a weapon and/or a drone; and

k. an accessory to any one or more of a. to j.

In another aspect, there is provided a method of interacting a target object with a tracking object, comprising:

providing a tracking object with an array of spaced receivers to be positioned relative to a tracking location, each of the receivers having an angular position value associated with a designated angle of the receiver relative to a reference axis, and at least one action output to initiate an action in relation to the target object;

enabling the receivers to receive a locating signal from an emitter onboard a target object, the locating signal including, at least in part, a plurality of pulses in a train of pulses;

assembling pulse count values, each associated with a count of pulses received by those receivers oriented in signal-receiving positions relative to the target object;

associating the angular positions of the signal receiving receivers to their corresponding pulse count values to identify an angular position corresponding to a maximum pulse count value, as an angular target location of the target object; and

enabling the action output, in relation to the angular target location.

In some exemplary embodiments, the pulses in the train of pulses may vary in strength from one pulse to another, further comprising identifying a range of the target object relative the reference axis, according to the maximum pulse value.

In some exemplary embodiments, action output is operatively coupled to a drive train for displacing the tracking object.

Some exemplary embodiments may further comprise:

a. for a first time period, mapping a first waypoint relative to the angular location; and

b. enabling the action output includes enabling the drive train to displace the tracking object toward the first waypoint.

Some exemplary embodiments further comprise:

c. for a second time period, identifying an updated angular position of the target object;

d. mapping a second waypoint relative to the updated annular position; and

e. enabling the drive train to displace the tracking object toward the second waypoint.

In some exemplary embodiments, the mapping may include accessing a stored geographical descriptor corresponding to an interim value according to one of the waypoints, and correcting the interim value according to the angular location to form the waypoint.

In another aspect, there is provided a local navigation system, comprising

a. a plurality of beacons for positioning at designated spaced locations in a travel region, each beacon including at least one emitter configured to emit a locating signal;

b. a locating device moveable in the travel region relative to the beacons, the locating device comprising:

-   -   ii. a receiver array of spaced receivers to be positioned         relative to a tracking location, each of the receivers having an         angular position value associated with a designated angle of the         receiver relative to a reference axis;     -   iii. a drive train to move the locating device through the         travel region; and     -   iv. at least one processor in operative communication with the         receiver array and the drive train, the processor configured to:         -   1. enabling the receivers to receive locating signals from             the emitters, each locating signal including, at least in             part, a plurality of pulses in a train of pulses;         -   2. for each train of pulses received, associating a pulse             count value according to a number of pulses received in the             train, with an angular position of the corresponding             receiver;         -   3. from the pulse count values for the locating signal             received from each beacon, identifying a maximum pulse value             and attributing the beacon with the corresponding associated             angular position to form a first positional array of angular             positions;         -   4. form a first waypoint in the travel region relative to             the first positional array; and         -   5. initiating the drive train toward the first waypoint;         -   6. repeating 2 and 3 to form a second positional array;         -   7. form a second way point in the travel region relative to             the second positional array; and         -   8. initiating the drive train toward the second waypoint.

In another aspect, there is provided a method for locating an least one emitter, comprising receiving, from each receiver in an array of receivers configured in different angular positions about the array relative to a corresponding array location axis, one or more outputs corresponding to a train of pulses in a locating signal received from the emitter, processing the outputs to obtain a pulse count values, to profile the pulse count values at each receiver, from one receiver to another in the array in relation to their respective angular positions, to designate a maximum peak angular position associated with a maximum pulse count value, and to attribute the peak angular position to an angular emitter location.

Additional functions, objects, advantages, and features of the present invention will become apparent from consideration of the following description and drawings of exemplary embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

Several exemplary embodiments are provided, by way of examples only, with reference to the appended drawings, wherein:

FIG. 1 is a schematic view of several exemplary transmitters in an operable configuration with a planar receiver array;

FIG. 2 is a schematic view of exemplary transmitters in another operable configuration with a perimeter receiver array;

FIG. 3 is a schematic view of an exemplary transmitter in an operable configuration with a 3-dimensional lattice of receivers as a single array, or multiple arrays of said receivers situated around a room;

FIG. 4 is a schematic view of several exemplary plots of signals emitted by transmitters as defined herein;

FIG. 5 is a schematic view of a portion of a transmitting device of FIG. 1 ;

FIG. 6 is a schematic view of several additional exemplary plots of signals emitted by exemplary transmitters as defined herein;

FIG. 7 is a flow chart of a process implementing the transmitter of FIG. 1 ;

FIG. 8 is a schematic view of a portion of an exemplary receiver array of FIG. 1 ;

FIGS. 9A to 9D are schematic operational views of an exemplary transmitter and. an exemplary receiver;

FIG. 10 a schematic view of an exemplary transmitter in another operable configuration with a receiver array;

FIG. 11 is another schematic view of exemplary transmitters in another operable configuration with a perimeter receiver array;

FIGS. 12 a and 12 b are perspective views of additional exemplary embodiments, in the form of a mouse and pointer;

FIG. 13 is a schematic view of exemplary transmitters in another operable configuration with an receiver array;

FIG. 14 is a perspective schematic view of still another exemplary embodiment, in this case of a golf mat;

FIG. 15 is a perspective schematic view of still another exemplary embodiment, in this case of a 6DOF controller; and

FIGS. 16 and 17 are schematic views of a computer system in accordance with an exemplary embodiment herein.

FIG. 18 is a schematic view of a beacon device and a locating device;

FIG. 18 a is an enlarged view of the beacon device of FIG. 18 ;

FIG. 18 b is an operational schematic view of aspects of the beacon and locating devices of FIG. 18 .

FIG. 19 is a schematic view of multiple beacon devices and a locating device;

FIG. 20 shows schematic views of a beacon device and a locating device;

FIG. 21 is a schematic view showing features of the beacon device and locating device of FIGS. 18 to 20 ;

FIGS. 22 a, 22 b and 22 c are schematic views of a time-slotted communication protocol using a timing pulse, while FIGS. 5 d and 5 e are schematic views of locating signal configurations;

FIG. 23 is an operational schematic view of the beacon and locating devices of FIGS. 1 to 3 ;

FIGS. 24 a, 24 b and 24 c are schematic views of plots of angular position versus pulse count value for an example operation of a beacon and locating device of FIGS. 18 to 20 ;

FIG. 25 is a perspective schematic view of an operational configuration for a method of using beacons to triangulate the position of a receiver array on a robotic device;

FIG. 26 is a perspective schematic view of an operational configuration for a method of plotting waypoints and using heading angles to plot a guided path for a robot; and

FIG. 27 is a perspective schematic view of an operational configuration for guiding a robotic device back to a docking station using beacons.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

It should be understood that the disclosure is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the drawings. The disclosure is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Unless limited otherwise, the terms “connected,” “coupled,” and “mounted,” and variations thereof herein are used broadly and encompass direct and indirect connections, couplings, and mountings. In addition, the terms “connected” and “coupled” and variations thereof are not restricted to physical or mechanical or electrical connections or couplings. Furthermore, and as described in subsequent paragraphs, the specific mechanical or electrical configurations illustrated in the drawings are intended to exemplify embodiments of the disclosure. However, other alternative mechanical or electrical configurations are possible which are considered to be within the teachings of the instant disclosure. Furthermore, unless otherwise indicated, the term “or” is to be considered inclusive. Further, the term “a” when followed by a single recitation of a named feature is to be construed inclusively, to mean that it includes within its meaning, more than one of the named feature, or more than one feature including the named feature.

Exemplary embodiments provide a system whereby a position of one or more transmitters can be determined by one or more receivers based on a signal from each transmitter, received by at least one of said receivers, each receiver being coupled to an electronic circuit and operable to determine a location of a particular transmitter based on a comparison between the signals received by the receivers.

A system for sensing a position of a transmitter uses a transmitter constructed to transmit a pulsed signal. The at least two receivers are located in a spaced relation relative to the transmitter and to each other. At least two receivers are each operable to receive a different version of the signal. An electronic circuit is coupled to the at least two receivers, and is operable to determine the position of the transmitter in relation to the at least two receivers based on a comparison between the different versions of the signal.

A method of determining a range of a transmitter, the transmitter being constructed to transmit a signal to at least one receiver in a spaced relation to the transmitter with an electronic circuit connected to the receiver, the method comprising operating the transmitter to transmit a radio signal to the receiver and determining a range of the transmitter from the radio signal that is received by the receiver.

Receivers comprise at least two receivers that are in a spaced relationship to one another and to a transmitter. The receivers are each operable to receive a different version of a signal transmitted by the transmitter. The receivers are connected to an electronic circuit, and the receivers are constructed in the circuit to determine a location of the transmitter in relation to the receivers based on a comparison between each different version of the signal.

A method for sensing a location of a transmitter uses at least two receivers that are spaced apart from one another and spaced apart from the transmitter. The transmitter operates to transmit a signal to the at least two receivers, each of the least two receivers being operable to receive a different version of the signal. The method comprises operating the transmitter to transmit a signal, operating the at least two receivers to each receive a different version of the signal and determining a location of the transmitter based on a comparison of the two versions of the signal.

A system for sensing position comprising at least two transmitters, each operable to transmit a unique signal. There are at least two receivers in a spaced relationship to each other, and each receiver is operable to receive a different version of each of the signals. The receivers are comprised of a wave energy input device, and a receiver element. An electronic circuit is coupled to the receiver element and is operable to substantially simultaneously determine a location of each of the radio transmitters in relation to the receivers by distinguishing the transmitters based on the unique data field, and based on a comparison between each different version of each respective signal.

A system for identifying and locating one or more transmitters in a transmitting area comprises a signal propagating medium for conducting signals throughout the transmitting area. At least one of the transmitters has means for producing a signal and coupling the signal to the signal propagating medium. The signal has a combined pulsed coding and signal strength coding, each signal including a unique code identifying a transmitter from which the signal is emitted. Receivers are associated with the transmitting area and are connected to the propagating medium to receive at least one signal from the at least one transmitter, with means for decoding the signal to identify and locate the at least one transmitter.

A system for sensing a location of a transmitter uses a transmitter constructed to emit a signal that is unique to the transmitter. A receiver is operable to receive the signal and to identify the transmitter based on the signal and pre-programmed information in the receiver. An electronic circuit is coupled to the receiver, the electronic circuit being operable to determine a location of the transmitter in relation to the receiver based on the signal.

A method for sensing a location of the reflected signal from a transmitter uses at least two receivers that are spaced apart from one another and spaced apart from the transmitter. The transmitter operates to transmit a signal to the object that reflects the transmitted signal to at least two receivers, each of the least two receivers being operable to receive a different version of the reflected signal. The method comprises operating the transmitter to transmit a signal, to a reflecting object and hence operating the at least two receivers to each receive a different version of the reflected signal and determining a location of the transmitter based on a comparison of the two versions of the signal.

As will be described, an exemplary embodiment provides a system including at least one signal transmitter 10 and at least one signal receiver 12 operable to receive the emitted signal 14. As will be discussed, the emitted signal 14 includes a single packet of information that identifies the transmitter identity, communicates the synchronizing timing of the packet, as well as including a train of pulses with varying pulse strength along the train. The signal receiver 12 upon receiving the signal, is operable to identify the transmitter 10 (in the case of two or more transmitters), synchronize the timing of the received pulse with other receivers 12 (in the case of two or more receivers), and to count the number of pulses received above a predetermined threshold. In this case the count represents the range between the transmitter 10 and receiver 12. Using calibration and a plurality of other receivers arranged or configured as an array 16, the range and location of the transmitter(s) may be individually and separately be calculated.

An exemplary embodiment is shown in FIG. 1 with one or more signal transmitters 10 (in this case two), sending signals 14 from an emitter 17 to one or more signal receivers 12 (in this case nine) that are affixed to the array 16. The array 4, in this case, is shown in a planar configuration, though the array 16 may be provided in other configurations as need be. The system is further operable to determine a range 18 between each of the signal receivers 12 and the corresponding signal transmitters 10, and may also, in some cases, determine the identity of each signal transmitter 10, its position, and/or angular orientation 20. Data resulting therefrom may be recorded in a computer or on a display unit 22, as 3-dimensional representable data or rendered as a 3D image or icon 24 (FIG. 2 ).

An exemplary embodiment, as shown in FIG. 2 , includes any number (in this case two) of signal transmitters 10 sending signals 14 to any number of signal receivers 12 (in this case eight) that are affixed to a perimeter 22 a of the display unit 22 such that the corresponding icons are displayed thereon, for example as a precise rendering of the real-time position and motion of the actual signal transmitters 10. Other positions or data representing images, position or range or the like may also be presented on the display unit 22, or for that matter other formats on other display or messaging devices as need be.

Another exemplary embodiment is shown in FIG. 3 , with one or more receiver elements 12 or arrays 16 of signal receivers 12, affixed to a construct of multiple surfaces (such as a 3-dimensional room) such that any number of signal transmitters 10 may be ranged if not obscured, for example by objects in the room between the signal receivers and the signal transmitters 10. The range processing may occur with a mathematical formula involving measured ranges 18, triangulation or trilateration algorithm, or the like.

Exemplary embodiments may operate in any wave medium where wave phenomena arise, such as IR near-far, visible, laser, ultra-violet, and high frequency radio waves, and combinations and various modulations thereof. Exemplary embodiments may also be applied to the acoustic medium and ultra-sonic waves. Further to this, the medium may operate to reflect the transmitted signal where the transmitter and receivers are operable from the same device or controlled by the same processing unit. An object that reflects the signal may need a suitable reflection medium (for example: such as reflecting metal surfaces or special IR reflecting tape) that allows for a calibratable or measureable range to be determined between the transmitter and receiver.

Referring to FIG. 1 , short range precision ranging and positioning may be accomplished requiring a configuration as simple as a single transmitter 10 to a single or a plurality of individual signal receivers 12, in spaced relation and receiving the same transmitted signal 14. A single transmitter 10 may thus be operable to send a signal 14 including a series of primary bursts forming a train of pulses whose collective pulse profile and changes with increasing distance from the signal transmitter. Detecting and calibrating the changes in the collective pulse profile allows for range, distance and/or orientation to be correlated. In one example, the pulse profile is measured as a count of pulses in the signal and is converted to a value representative of a range 18, for example based on one or more calibration measurements. The 3-dimensional positioning calculation is hence based on a range 18 measurement from multiple signal receivers 12. This method of ranging and position measurement may occur accurately within a maximum range of 30 meters depending on the strength of transmitted signals and the sensitivity of the receiver. For electro-magnetic or acoustic mediums, methods according to exemplary embodiments herein are based on high frequency pulsing of these transmissions and using a receiver that is sensitive to and capable of digitally processing these pulsed signals. Estimates for the accuracy of ranging can be achieved for within 1cm root-mean-square (RMS) error for 10 meter range, 1.0 mm RMS error for within 3 meters of range, and a range measurement resolution as low as 0.1 mm.

Referring to FIG. 4 , the signal 14 includes a digital preamble segment 34 allowing the receiver to identify the transmitter and to synchronize to a timing operation essential for ranging or pulse counting. The preamble segment 34 may, in this example, include all digital data fields, such as Device ID 36, operating data 38, encryption keys and a check-sum code, or generally a cyclic-redundancy code (CRC) 40, that is needed for the data communication between signal transmitter 10 and the signal receiver 12. The start of the data fields, for example, also allows the signal receiver 12 to begin synchronization and ranging.

The signal also includes a ranging segment 42 which provides ranging code that typically changes with increasing range 18 between the signal transmitter 10 and signal receiver 12, that is as the signal propagates toward the receiver in the carrier medium, such as atmospheric air. The ranging code is provided in the form of a series or train of pulses that vary in illumination strength along the series. The ranging segment may have various profile shapes including a series of ramped power levels incremented (as seen at 44 in plot b)) or decremented (as seen at 46 in plot c)) by the transmitter, as will be described. Another example may utilize pulses with randomly varying pulse strength (as seen at 48 in plot d)) In this case, the corresponding received ranging segments 138, 140 and 142 include the pulses above the predetermined threshold value 136, the count of which represents a direct measure of the illumination signal strength of the signal received, and hence the range. As will be described, the signal receiver 12 and those components, modules and functions associated therewith, are configured to receive the signal, identify the signal transmitter 10, and process the ranging segment 42 by counting the number of pulses present in the signal above a predetermined threshold value. The count then provides a representation of the distance, or range, between the signal transmitter 10 and the associated signal receiver 12, which may be applied to multiple signal transmitters 10 and receivers 12.

In one example, the positioning method makes use of a single transmitter pulsing at between 10 to 10,000 KHz. This range may vary for visible light or IR circuits using a transmitting diode and a receiving diode, but radio can vary significantly from 100 KHz upwards to 10 GHz. Each signal is thus transmitted in one or more primary bursts with a digitally coded sequence or a series of pulses at a rate of about 1 KHz to 500 KHz, with the burst rate being smaller than the pulse rate. Acoustic waves or pulses can vary from 10 Hz to 100 KHz for ultra-sonic ranges. Depending on the application, the duty cycle of the pulses inside the burst may be varied, allowing for the detector to operate more efficiently, although this should not adversely affect ranging or positioning accuracy thereof. In FIG. 5 , each signal transmitter 10 includes a carrier code generator 52 and a signal code generator 54, in this case distinct processors under the control of a microprocessor 56 and synchronized by a common clock 58. Alternatively, the function of the carrier code generator 52 and the signal code generator 54 may be carried out in a common processor such as a general computer. Both the carrier code and signal code generators 52, 54 dispatch waveforms for the carrier and signal codes to a digital modular 60 which modulates the carrier and signal code waveforms to deliver a binary waveform to the emitter 17. A power level controller 64 receives ranging code details from the microprocessor 56 and regulated power from a power regulator 66 signal to adjust the power level of the output of the emitter 17 for signal transmission.

Referring to FIGS. 5 and 6 , the microprocessor 56 communicates with memory 68 for storage of transmitter identity and ranging code data. Alternatively, the ranging code data may be generated according to a ranging code algorithm in a corresponding processor. In this case, the carrier code includes instructions to the emitter 27, in the form of a digital waveform as shown in FIG. 6 a ), to be compiled by the digital modulator 60, to emit the carrier wave which will carry the signal. Similarly, the signal code includes instructions, in the form of preamble code, including code for the transmitter identity, the data field and the CRC field, as shown in FIG. 6 b ) to the digital modular, again to be compiled by the digital modular 60, to form a modulated digital output as shown in FIG. 6 c ) provided in the form of a waveform of binary ones and zeros each with a constant strength, peak or amplitude according to the operating power of the digital modulator 60.

Meanwhile, the microprocessor 56 dispatches instructions along path 70 to the power level controller 64 so that the power level controller 64 can set the power of each individual binary one in the waveform to form the amplitude of the emitter output as shown in FIG. 6 d ) as a series of pulses. The preamble segment 34 is shown with each of its pulses having a fixed maximum power, so that the entire preamble will be received by the receiver element above the predetermined threshold value. The ranging segment 42 is shown with the power level of each pulse being adjusted according to the ranging code.

Referring to FIG. 7 illustrates and exemplary process using an incremented ranging segment. The process of signal generation is started by the clock 58 executing a delay, at step 72, to denote the end of a previous signal. Next, at step 74, the microprocessor 56 instructs the carrier code generator 52, on data path 76, to initiate the carrier waveform on data path 78. The microprocessor 68, at step 80, instructs the power level controller 64, on data path 70, to set the power level to maximum. Next, at steps 82, 84 and 86, the microprocessor 56 instructs the signal code generator 54, on data path 88, to initiate the signal waveform by first dispatching the identity code waveform, then the data field code waveform, then the encryption and/or CRC pulse code waveform, which is then dispatched by the digital modulator 60 to the emitter 17 on data path 90. Next, at step 92, the microprocessor initiates a range loop and fetches, at step 94, the first range code stored in memory 68 via data path 96. With the first range code, the microprocessor 56 instructs the power level controller 64, at step 98, to set the first power level for the first pulse in the ranging segment, which in turn adjusts the power at the emitter output, at step 100, to form the first pulse in the train of the ranging segment. Next, at step 102, the microprocessor 56 advances the count and determines, at step 104, if the count equals N, the number of pulses in the range segment. If “no”, then the microprocessor 56 repeats step 72 and fetches the range code for the next pulse in the ranging segment. Steps 94 to 104 are then repeated until the ranging segment has been fully formed on the emitter output, at which point, the emitter stops the waveform, at step 104, and terminates the signal, and the microprocessor repeats step 72 to implement the delay denoting the end of the signal.

The common clock 58 is not necessarily required but is strongly to ensure that, when the signal is received at the receiver array 16, there is no inconsistency between the bit-up times for the primary bursts, and hence the data carried in them. If the clocks for both the carrier code and signal code generators 52 and 54, respectively, are not synchronized, then an apparent jitter noise may appear in the timing of received primary bursts caused by the inconsistent count of received data. This may cause an increased “noise” in the ranging measurements causing reduced accuracy of ranging. Using a synchronizing clock 58 reduces, if not eliminates, this undesired source of ranging error.

Thus, the ranging code quantifies the power level of each individual pulse, according to a ranging algorithm. In one example, for incrementing the range-code the power function is R(x)=x, where R(x) is a power level, and where x is the pulse number which increases from zero to N, and N is the maximum power level as well as the last pulse of the range-code. Similarly for a decrementing range-code the power function is R(x)=N−x. In another example, the nonlinear function of the range-code is the power function R(x)=x{circumflex over ( )}2/N, as an increasing nonlinear range-code, and, R(x)=N*(1−(x/N){circumflex over ( )}2) as a decreasing nonlinear range-code code. An example of an interleaved range-code is where the power function R(x)=x (if x is an even number), R(x)=N−x (if x is an odd number).

This latter is an example of a range-code that will be calculated as an algorithm in a processor.

In this example, the ranging code is stored in memory 68 for each pulse. Electronic components are currently available that can be configured to set the power of a transmitting device digitally as a series of gated components inside a miniature integrated circuit substrate. Examples of such power controlling devices are digital resistors, gated field-effect transistors (FET's) with digitally controlled gain, digital-to-analog (DAC) devices, or the like. The power level controller 35, in this case, may use the ranging code and store it inside the power level controller's ROM for immediate setting of the power for the device. Hence, the power level controller 64 will set the power level of the signal emitter during signal transmission, with each setting corresponding to an individual pulse. Typically the number of increments available for the power level settings is determined by the bit range of operation specified for the power level controller 64, and can be as low as 4-bits to as high as 10-bits long ranging from 16 settings to 1024 different power level control settings overall. Each power level controller setting translates into a transmitted signal strength setting for a single pulse, by precisely controlling the current or voltage flowing to the transmitter from a constant and controlled power regulator 106. It is desirable to maintain a consistent current flowing to the diode, so that the power regulator 106 be available to reduce the effects of battery drain that may otherwise change the precisely calibrated range settings of the transmitter 10 relative to the receivers 12.

Various methods of electronic circuitry are available that may be configured to serve as a power level controller in a transmitting device. Typically, the power level controller 64 adjusts the power level for each pulse within the ranging segment 42. Examples of devices using such methods of electronic circuitry include a Digital-to-Analog (DAC) chip and a digital resistor chip. Depending on the time required to adjust the strength of an individual pulse, a circuit must be able to process a digital instruction during the off-cycle of a pulse, allowing the digital power to be available during the next on-cycle for the next pulse. Such hardware devices for controlling signal strength depend on how the transmitting device best varies the signal strength, such as using voltage level, current level, or both, for example.

FIG. 8 illustrates more details of three receivers as examples of those in the array 16. Each signal receiver 12 includes a signal energy transducer 110 which receives the signal including the preamble and ranging segments and its carrier waveform and emits a corresponding series of secondary bursts digitally representing the signal These secondary bursts are, in turn, received by a low noise amplifier 112, in turn communicating with a band pass filter 114. The band pass filter 114 functions to isolate the value of each secondary burst from the carrier waveform. The band pass filter 114, in turn, communicates with an automatic gain controller (AGC) 116. The AGC 116 communicates along data path 118 to the amplifier 112 and the amplifier 112 with comparator 120. The comparator 120 receives a threshold setting value from a threshold set unit 122 and compares the messages from AGC 116 to establish the pulses in the range segment that are above the predetermined threshold and to dispatch corresponding instructions for each pulse above the predetermined threshold to the digital output unit 124 which in turn emits a digital output on path 126 to a microprocessor 128 for counting. The threshold set unit 122 may manually programmed or otherwise be calculated by way of another controller such as microprocessor 128 or a general purpose computer.

The microprocessor 128 is shown in more detail in FIG. 1 and includes a channel processor module 130, a range processor module 132 and an identity and position processor module 134. These modules, in this case, are subroutines operating within the microprocessor 128, or may alternatively be carried out by stand alone processors or in another computer system.

In this case, the channel processor 130 is configured to receive inputs on path 126 at frequencies of 10 to 10,000 KHz. In this case, the signal receiver 12 may require that the pulses in the range segment of the signal be sent at a “pulse rate” or frequency that allows the channel processor 130 to operate unimpeded without stray, interference, or ambient signals otherwise corrupting the received pulses. The AGC 116 communicates on data path 118 to control the gain of the of the value being received by the comparator 120 and operate at a rate that is typically slower than the pulse rate, so as to not be altered by a lower frequency pulse rate. In effect, the role of the AGC 116 is to accommodate for the reduced strength of the range segment of the signal. The reduced strength simply means that the signal is losing its amplitude as the signal radiates from the signal transmitter 10 and through losses in the carrier medium, the farther the distance between the signal transmitter 10 and the signal receiver 12 , the greater the gain provided by the AGC 116. The AGC 116 should change the gain relatively slowly in relation to the rate at which the pulses are received, so that the AGC 116 does not alter the ranging operation itself If desired, the microprocessor 128 may be configured to control the gain provided by the AGC. The AGC 116 functions with the band-pass filter 114 which allows only secondary bursts to get through at the pulsed frequency, hence filtering out signal interference and ambient noise. The AGC 116 thus, in one operational phase, will only allow 1000 KHz pulses to pass through from the receiver's signal energy transducer 110. The AGC 116 may have other operational phases in which pulses of other frequencies may pass through, including those of a specified frequency or a specified range of frequencies. Generally speaking the secondary burst reception is digital and represented as burst codes that are received and processed with enough sensitivity that allow the receiver/transmitter combination to operate at long ranges in excess of 10 meters range, and with virtually no ambient IR interference. For example, a digital IR receiver diode, operating as the signal energy transducer 110, will operate to lock onto transmitted IR pulses to allow for the diode's AGC 116 to stay set inside the band-pass filter's cycle, allowing the digital pulse reception to not be interrupted or corrupted.

Equally important to the ranging segment transmitted from the signal transmitter 10, is that the signal receiver 12 allow for a programmable threshold of detection of individual pulses within the ranging segment. The receiver 12 is, in this example, in an OFF state when a pulse with a pulse strength below a threshold power level is received. The receiver 12 is configured to detect the transmitted pulse and transfer to an ON state, when the strength of the pulse exceeds the threshold power level. Ideally the variation of power level across the pulses in the train is configured to be proportional to the power loss due to increasing range between a transmitter and receiver. Otherwise, a power range should be selected that exceeds the power loss due to range changes. In this situation, only one calibration step may be required mathematically to select a suitable range given the available power levels and the programmed threshold.

Thus, in one exemplary embodiment, the ranging segment 42 provides a sequence of pulses, such as those shown at 44, 46 or 48. In the case of an incremental or ramp up sequence 44, at the beginning of each primary burst, the power level controller 64 is set initially to the minimum power setting. This causes the minimum amount of electrical power to flow through the signal transmitter 10, hence the transmitter 10 is transmitting energy at its minimum signal strength. At every off-cycle of the primary signal burst, the power level controller 64 is incremented a value which causes the transmitter power to gradually increase incrementally until it reaches the maximum power. At some time between the minimum and maximum signal strength or brightness of the transmitter, the receiver 12 switches on and begins receiving the primary pulses and converting them into a corresponding series of secondary bursts forming one or more digital messages. The microprocessor 128 then counts the digital messages in the ranging segment and this count is inversely proportional to range 18 between the transmitter 10 and receiver 12, that is, the smaller the counter, the greater distance travelled by the signal to the receiver 12.

In the case of multiple receivers 12 in the array 16, the AGC 116 for each receiver may be controlled by a common control function. In this case, the individual AGC's 116 for each individual receiver 12 will not adjust independently of each of the others. This would mean that gain adjustment for signal loss is applied evenly across the receivers 12 to mitigate the possibility that some receivers 12 mistakenly identify a “gained” pulse signal to be above the predetermined threshold value, while another receiver, receiving the same pulse (but in this case not gained) consider the same pulse to be below the threshold, resulting in a different count and a different range that would otherwise not occur had the AGC's been adjusted consistently. Hence the error of range based location calculation may be significantly reduced, since the receivers, in this case, operate repeatably and consistently with each other. Such a multi-element AGC may thus allow the array to operate at long range and in the presence of external interference.

At the signal receiver 12, the varying strength of the pulses in the ranging segment 42 means that the signal receiver 12 may not activate until a threshold 136 is reached to receive pulses for counting. If the signal receiver (when switched-off) is in a consistent initial state (with a high AGC 116 setting for example) then there is a consistent threshold 136 that will trigger the receiver's ON state. This typically varies with the signal strength of the transmitter. However, the consistent state of the AGC 116 in the digital diode may in some cases require that a lower (or higher) pulse duty-cycle to keep it stable, or require a manual setting in the circuit to not vary with ambient light or other effects. In this case, the incremented, decremented and random pulse sequences are shown in a form as received by the receiver, at 138, 140, 142.

Receiver circuit components are currently available that may be configured for exemplary embodiments herein. For example the TSOP7000 from Vishay Electronics operates digitally for IR transmitted bursts at 455 KHz, and various radio devices such as a AD8302 Log-amp detector from Analog Devices will operate as a wideband radio receiver for radio bursts at any frequency within 1 KHz to 3 GHz. Standard IRDA modules have built-in AGC capabilities and allow for pulse transmitting and receiving at up to 4 MHz to allow for very fast and accurate ranging applications. These devices may be configured to receive a series or sequence of secondary burst signals to estimate the ranging in different media.

In an exemplary embodiment, as shown in FIG. 9A, the signal transmitter element and signal receiver 12 are shown separated by the range 18. The signal receiver is configured to calculate the range 18 based on the signal 14 received from the signal transmitter circuit. This range is based on a constant and fixed angle between the signal transmitter and signal receiver 10. Similarly, in FIG. 9B, the signal receiver 10 is configured to calculate an angle 146 based on a signal 14 given that there is a fixed range. In FIG. 9C, the signal transmitter 10 is configured to send a signal 14 to reflect off a reflective barrier 144 and be received by the signal receiver 12, such that the range 18 may be calculated, assuming a constant and fixed angle 146 between the signal transmitter 10 and the signal receiver 12. In FIG. 9D, the signal 14 is reflected off barrier 144 and received by the signal receiver 12, such that the angle 146 may be calculated by the signal receiver 12, assuming a constant and fixed range between the signal transmitter and receiver. In both FIGS. 9C and 9D, an isolating barrier 148 is placed between the signal transmitter 10 and signal receiver 12 to reduce short-range cross-talk therebetween. Also, in FIGS. 9C and 9D, the signal transmitter and signal receiver may be operable in common circuitry providing the functions of both the transmitter and receiver.

In another exemplary embodiment, different types of sequences may be executed that the power level controller 64 may vary to create the required receiver count proportional to the range. Typically the ramped-up or ramped-down sequence is desirable depending on the behavior of the receiver's digital processing step. For a transmitter, the ramped-up power sequence 44 is better because the receiver circuit does not lag during the ramp-up cycle, nor does it alter the AGC 116 setting during a ramp-up. A ramp-down sequence 46 may typically alter the AGC 116 setting because the AGC 116 may attempt to hold lock if the received signal weakens causing inconsistent pulse counts in the microprocessor 128. If a decrement power control profile 46 is used instead, then a receiver 12 may receive digital pulses but turn-off as the power ramp weakens the signal (see FIG. 4 ). Typically the AGC 116 is set to fixed operation if a decremented power sequence 46 is used. Also, most digital devices suitable for the power level controller 64 may be better suited to increment or decrement because there is a shorter time to digitally switch gates for increment/decrement operations than having a whole new power setting written to its ROM. In other words, the ROM stores one power setting at a time for each pulse and is updated for each subsequent pulse.

As another exemplary embodiment, the power level or power control profile may use a sequence for the digital power that does not resemble a ramp 44, 46 that is neither increasing nor decreasing. This power control profile may, in this case, be patterned or random code 48 of power control such that all required values of digital power control are represented in the ranging segment 42 (see FIG. 6 ). Such a power code contains all the unique power control settings as found in a ramped code, for example, but ordered differently. The effect of this profile is that only a subset of all power settings are received by the receiver and hence the receiver pulse count is a subset of the pulses in the originating signal. The receiver's count is still proportional to the range 18 between the transmitter and receiver. A random or pseudo random code may be used. A code represented by a formula or an algorithm may also be used. This sequence of the power profile may be a random or patterned code for every ranging period 42, for each subsequent signal. It is possible that the code pattern 42 to 48 may be different for each successive ranging segment or period 42, assuming that the receiver properly decodes the patterned code into a count consistent with the range.

In an exemplary embodiment, a reason for using a random or patterned power control code 48 is to remove or average-out bias errors in the receiver unit. A receiver circuit may tend to “remember” the power profile of the previous cycle, that is the cycle that led to the immediately preceding pulse, as a biased AGC 116 setting or as a higher electrical capacitance in signal energy transducer or the light sensor circuit, for example. Also, when using light pulses, a signal energy transducer, in the form of a digital receiver diode has relatively fast switching speeds and may not require an AGC 116, in which case a sequence of random power settings 48 may be desirable for an emitter in the form of a transmitting diode, to offset any lingering electrical charge from the last pulse cycle. This will allow the power settings to not follow a known sequence that the receiving diode can adapt to easily. In this configuration, the received pulses in the burst are still counted as digital output pulses and the sum is proportional to the signal strength and hence the range. The disadvantage is that a power control device cannot write digital control values to the ROM as fast as they can be either incremented or decremented.

There are various types of device configurations possible using the above mentioned single transmitter and receiver(s) combination, including:

-   -   1) a single transmitter 10 sending signals 14 to a single signal         receiver 12 measuring the signal strength and range.     -   2) a single transmitter 10 sending signals 14 to an array 16 of         two signal receivers 12 to determine spaced relation between the         two signal receivers 12. This is a 2-dimensional positioning         method.     -   3) a single transmitter 10 sending signals 14 to an array 16 of         three or more signal receivers 12, such as a symmetrical array         configuration of signal receivers 12. This may be a 2- or         3-dimensional positioning method, depending on the orientation         of the signal receivers 12.     -   4) a single transmitter 10 sending signals 14 to an array 16 of         many signal receivers 12 to allow a least-squares fit of the         transmitter ranges and arranged as a profile 60 (FIG. 10 ) to         deduce the angular of curvature of the transmit profile 60,         hence deducing angle of arrival and position.     -   5) a single transmitter 10 sending signals 14 to at least two         arrays 4 of signal receivers 12 that allows for a least-squares         solution fitting the spatial power profile of the transmitting         device 10 to determine the angular orientation of the         transmitting device in 3-dimensions, and hence allowing to use a         curvature     -   profile 150 (FIG. 10 ) to deduce the position of the transmitter         10 in addition to the ranging measurements 18 at each said         signal receiver 12.

In exemplary embodiments, angular orientation may be expressed as the elevation and heading angles to be determined for a transmitter 10, by determining multiple ranges from a single transmitter 10 to multiple signal receivers 12, and hence fitting a surface of these ranges and using a curvature profile 150 to determine the device position.

In an exemplary embodiment, an orientation angle estimation method may be implemented, based on the use of a multi-receiver array processing of range results with multiple channels. For instance, outputs of range 18 from multiple channels, where each channel receives the output from one of a number of receivers (such as in a 3×3 (9 sensor) array or a 4×4 (16 sensor) array) The output result may be used to present will be a 3×3 array image or a 4×4 array image representing the estimated range between the transmitter 10 and the array 16, in this case providing a planar array. By fitting a surface curvature profile 150 through the range data points with coordinates of the actual positions of the sensors on the array, an estimate for an illumination lobe profile, as shown in FIG. 10 , of the transmitter may be calculated. Depending on the size of the sensor array, greater accuracy can be obtained for the angle estimate including more precision calculation of the XYZ coordinates of the transmitter. An example of the angle orientation estimation method and apparatus is depicted in FIG. 10 .

In an exemplary embodiment, a single transmitter 10 may be used with multiple emitters 17 to determine the orientation of a device in 3-dimensions, as shown in FIG. 11 . Using three distinct emitters 17 multiplexed, by way of multiplexer 160, from one transmitter 10 and each identifiable by a code 36 in the transmitted preamble 34 and data field 38 of the transmission, multiple emitters 17 may be multiplexed with a round-robin algorithm built into the transmitting device's processor 56, or activated using a wireless controller 162 instructing the transmitter 10 to independently transmit to one of three separate emitters 17. At the receiver array 16 each independent transmitter 10 is positioned and tracked in 3-dimensional space. If three distinct transmitter element 17 coordinates are available then the transmitter 10 can be positioned accurately in 3-dimensional space, as well the orientation angles (roll, pitch, and yaw) can be determined. However, if a single transmitter element 17 is not present then the processing computer may employ an algorithm to estimate the said transmitter element's position based on past or proximity data. A computer algorithm may “correct” for anomalies in the calculation by estimating the position of the unknown transmitter element, knowing that it is within proximity to the other two transmitter elements 17. An example of this method of device positioning is depicted in FIG. 11 for a single transmitter 10 with three signal emitters 17 also showing a 3-dimensional rendering of a multi-point image or icon 24 on the display unit 22.

In an exemplary embodiment, a single transmitter 10 may be used to calculate the range to multiple arrays 16 situated on the walls around a room, as shown in FIG. 3 , for example. These ranges may be used to form a triangulation or trilaterated solution using a minimum of three ranges representing the intersection of three circular surfaces. If more ranges are available then a least-squares solution may be used to determine the XYZ coordinates of the transmitter 10. This approach is similar to the Global Positioning System (GPS) method but instead pseudo-ranges are determined in a short-range signal environment. If the range measurements are biased because of the choice of the power control method and code, then a pseudo-range and bias estimation algorithm may be used to improve positioning accuracy.

In an exemplary embodiment, a method may be employed for determining the dilution of precision, a principle used in GPS calculations. This is based on multiple sensor processing channels allowing the solution of the transmitter to be over-determined. For example, if a 2×2 array is used then there are four equations to determine a unique XYZ coordinate calculation where only three unknown values are available. Thus, using an extra equation allows a measure of solution dilution to be calculated related to the uncertainty or over-determined nature of the solution available. Thus, for example, if one sensor was partially obscured or occluded then the result will cause an inaccurate least-squares solution to be calculated. This solution result will be measured as a solution with diluted precision, and the uncertainty will be measured beyond an acceptability threshold and thus allowing the solution to be ignored. Dilution of precision is common in GPS position measurement and is usually the result of poor calculation based on high multi-path fading or loss of satellite signals in urban canyons, for example.

While only specific combinations of the various features and components of exemplary embodiments have been discussed herein, it will be apparent to those of skill in the art that desired subsets of the disclosed features and components and/or alternative combinations of these features and components can be utilized, as desired. For example, it is to be stressed that the configurations and quantities of transmitter devices 10 and signal receivers 12 is not particularly limited, and can be chosen and structured for any given application in any desired manner. Thus, where it is only desired to determine a location of a single object in a single plane, the array can be limited to two receiver units 12 (connected to two single channel processors via a wired interface) that interact with (or receive signals from) one transmitter device 10 that is affixed to that single object. In contrast, where it is desired to track the location and/or movement of a plurality of objects in a three dimensional space, then the array can consist of a plurality of signal receivers 12 (each being coupled to a respective channel processor) that are configured to interact with a plurality of transmitter devices 10, each affixed to its own object. Using suitable programming logic in the processor, a direction can be calculated based on a different range to each receiver. For example, in a configuration with one transmitter 17 and two signal receivers 12, and denoting R1 and R2 as the reflected ranges to each respective receiver from the one transmitter, the processor can switch to an “ON” state if R1 is greater than R2, otherwise “OFF” if R2 is greater than R1. For example, proximity light switch, or a directional light switch, or any other two state switch apparatus may employ this configuration.

It should now be apparent to those of skill in the art that teachings herein can be used in a wide variety of real-world applications. FIGS. 12A and 12B illustrate exemplary embodiments in the form of a mouse 172 and a pointing device 174. In another exemplary embodiment, FIG. 13 illustrates a gesture interface 170 that may be utilized as a human interface device for computer applications, as an alternative to the mouse and pointing devices of FIGS. 12A and 12B, and potentially the need even for a computer keyboard, as software used on a computer system connected to gesture interface 170 may be programmed to respond to a sophisticated range of hand gestures that could represent the keys on a computer keyboard. In this manner, gesture interface 170 can mimic an actual computer keyboard. A IR-based hand gesture recognition device would typically involve a receiver array with an IR emitter in the middle allowing gestures to be determined by a combination of IR reflections as unique range-based spatial or temporal patterns recorded by the receiver array. Examples of gestures intuitively recognized from a human hand are “push”, “grab”, “expand”, and “swipe” (any direction). A microprocessor can recognize the unique patterns and display them on a computer screen, or perform a representative action.

It is also contemplated that transmitting devices, such as transmitting device 10 and emitter 17, may be fixed while an array of receivers 12 may be mobile and/or worn or carried by a user. Such a configuration may be used to allow a user to obtain precise positioning information for a mobile display allowing interactive input to a gaming device, for example, and vice versa. As another example, an array of receivers 12 could be mounted on a personal digital assistant (or other portable computing device) that is carried by an individual. At the same time, a plurality of transmitting devices 10 can be mounted throughout a shopping mall. As the user walks through the shopping mall, the personal digital assistant can provide precise mapping information to the user, indicating to the user exactly where the user is located within the shopping mall. Other applications of having mobile receivers 12 will now occur to those of skill in the art. It should now also be apparent that applications can exist where both transmitting devices 10 and an array of receivers 12 are both mobile.

In another exemplary embodiment, an array of transmitting devices 10 and an array 16 of receivers 12 may be configured so that, in at least one mode of operation, each are intended to be fixed in relation to the other, with a computing device associated with the system being configured to detect whether any movement in the fixed relation occurs. For example, such a system can be used in a burglar alarm system, where transmitting devices 10 are affixed to doors and windows, and the array 16 of receivers 12 are affixed to a wall or other stationary fixture proximal to the transmitting devices. When the burglar alarm system is “armed”, the movement of a door or window can be detected and provided as a signal to activate the alarm.

The configuration of receivers 12 in FIG. 3 depicts a three-dimensional cube of receivers 12. Such a configuration of receivers 12 may be used in a room, or multiple rooms of a building. Transmitters 10 that are active within the room can then be affixed to objects (or persons), to track their location within the room (or the entire building if the building is so equipped). In this example, a display unit may be replaced with computer tracking software that keeps track of where those objects are located in that room. This particular system can be duplicated in each room of the building, and wherein each array 16 of receivers 12 in the building is linked together wired or wirelessly, thereby providing a means for tracking the location of objects (or persons) as they move throughout the entire room or building. For example, an entire shopping mall could be outfitted with a plurality of arrays 16 of receivers 12 , and individual customers provided with transmitting devices 10, thereby providing a means to track the movement, and thereby the shopping patterns, of particular individuals.

In an exemplary embodiment, it is also contemplated that every transmitting device that is operable with multiple different arrays of receiver units 12 may be uniquely coded, in the preamble segment 34, thereby providing a means to track every individual transmitting device 10 in a centralized or master database. Such unique coding can include encryption or other security measures to allow them to be properly authenticated to operate with corresponding receiver units 12.

It is also contemplated, for exemplary embodiments, that the teachings herein can be applied to surgical procedures. For example, transmitting devices 10 can be affixed to a surgical instrument or implantable medical device and to various biological landmarks inside the patient. An array of receivers 12 proximal to the operating arena can then be connected to a computing device to give data as to where the surgical instrument or medical device is located in relation to the biological landmark. For example, a small radio transmitter device 10 (or a plurality thereof) can be affixed at a blockage point in an artery. A second transmitter device 10 (or a plurality thereof) can be affixed to a stent to be implanted at the blockage point. During insertion of the, stent, the array of receiver units 12 can communicate with the stent and the blockage point to ensure proper locating of the stent.

Another exemplary embodiment includes a directional light-switch and dimmer apparatus. Using a transmitting device 10 affixed between two signal receivers 12 such that the emitted signal reflects off from a moving object in such a manner that one signal receiver receives a low-range reflection before another, allows for a directional object motion to be determined. A microprocessor may employ suitable detection logic to determine a switch ON state based on one directional movement, and a switch OFF state as the opposite directional movement. Dimming of a light intensity, for example, may be based on the range measurement using both receivers simultaneously when the switch is in the ON state.

Another example of applicability of various exemplary embodiments herein is the field of industrial robotics. An individual robot on an assembly line can be outfitted with a plurality of transmitting devices 10, typically located at points on the robot that can move. The array of receiver units 12 and associated processing electronics that are proximal to the robot can then determine, with great precision, where the robot is located in an absolute terms. This location data can then be fed back to ensure precise locating of the robot is effected in the software and machinery used to move the robot, and thereby obviate the limitations of relying on relative positioning determinations that are effected by measuring the number of turns of a servo motor controlling the robot.

Another example of applicability of various exemplary embodiments herein is the field of golf swing analysis. A golf “mat”, shown at 176 in FIG. 14 , may be outfitted with transmitting devices 10 to emit a signal that reflects off from the golf club foot, such that the reflected signals are received by suitable array of receiver units 12. The reflected path is measured and used to determine the position of the club foot, hence the club foot path can be calculated, yielding useful information to the golfer for swing practice purposes. Useful information to be discerned are the club swing speed (typically up to 100 MPH), alignment relative to a centerline, and the height of the swing arc relative to a golf ball positioned in the mat area. The range capture speed must be up to 10,000 samples per second to accurately capture a fast golf swing for analysis purposes.

Another example of applicability of various exemplary various embodiments herein is the emerging field of immersive reality, wherein a user is equipped with a virtual reality display helmet and then equipped with one or more gesture interfaces 170, and as such may use a 6DOF controller 180 as shown in FIG. 14 . Where the user has a transmitting device 10 affixed to all limbs and fingers, a computing device that interconnects the array of receiver units 12 and the virtual reality display helmet can present an immersive reality experience to the user.

FIG. 16 shows a general computer system 190 on which exemplary embodiments may be practiced. The general computer system comprises information relay module 192. In some embodiments, the information relay module 192 comprises a module for providing audible cues, such as speakers via sound card 218. In some embodiments, the information relay module includes a display device or module 194 with a display screen 196. Examples of display device are Cathode Ray Tube (CRT) devices, Liquid Crystal Display (LCD) Devices etc. The general computer system can also have other additional output devices like a printer. The cabinet 198 houses the additional basic components of the general computer system such as the microprocessor, memory and disk drives. In a general computer system the microprocessor is any commercially available processor of which x86 processors from Intel and 680X0 series from Motorola are examples. Many other microprocessors are available. The general computer system could be a single processor system or may use two or more processors on a single system or over a network. The microprocessor for its functioning uses a volatile memory that is a random access memory such as dynamic random access memory (DRAM) or static memory (SRAM). The disk drives are the permanent storage medium used by the general computer system. This permanent storage may be a magnetic disk, a flash memory and a tape. This storage may be removable like a floppy disk or permanent such as a hard disk. Besides this the cabinet 198 may also house other additional components like a compact disc read only memory (CD-ROM) drive, sound card, video card etc. The general computer system may also include various input devices such as, for example, a keyboard 200 and a mouse 202. The keyboard and the mouse may be connected to the general computer system through wired or wireless links. The mouse 202 may be a two-button mouse, three-button mouse or a scroll mouse. Besides the said input devices there may be other input devices like a light pen, a track ball, etc. The microprocessor is configured to execute a program called the operating system for the basic functioning of the general computer system. The examples of operating systems are UNIXTM, WINDOWS™ and OS X™. These operating systems allocate the computer system resources to various programs and help the users to interact with the system. It should be understood that the disclosure is not limited to any particular hardware comprising the computer system or the software running on it.

FIG. 17 shows the internal structure of the general computer system of FIG. 15 . The general computer system 190 includes various subsystems interconnected with the help of a system bus 204. The microprocessor 206 communicates and controls the functioning of other subsystems. Memory 208 helps the microprocessor in its functioning by storing instructions and data during its execution. Fixed drive 210 is used to hold the data and instructions permanent in nature like the operating system and other programs. Display adapter 212 is used as an interface between the system bus and the display device 194, which is generally a monitor. A network interface 214 is used to connect the computer with other computers on a network through wired or wireless means. The system is connected to various input devices like keyboard 200 and mouse 202 and output devices like a printer 216 or speakers. Various configurations of these subsystems are possible. It should also be noted that a system implementing exemplary embodiments may use less or more number of the subsystems than described above. The computer screen which displays the results can also be a separate computer system than that which contains components such as a database and the other modules described above.

Other exemplary embodiments are also provided as described below:

In an exemplary embodiment, there is provided a signal transmitting device for conveying a signal for use in determining a distance between the signaling device and a remote location, comprising a source transmitter operable to transmit a train of pulses forming a data stream representing a message including a series of preamble pulses having a common carrier frequency and a relatively constant pulse strength, the series of preamble pulses having a pattern corresponding to a predetermined preamble segment of the message, the data stream including a series of body pulses representative of a body segment of the message, the body pulses including a common carrier frequency with the header pulses, each of the body pulses having a pulse strength, the pulse strength varying across the series of body pulses in a predetermined pulse strength pattern.

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable for generating a series of body pulses with a progressively increasing pulse strength.

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable for generating a series of body pulses with a progressively decreasing pulse strength.

In an exemplary embodiment, there is provided a device as defined 1, the source transmitter being operable for generating a series of body pulses with a varying pulse strength from one pulse to another in the series.

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable for generating a series of body pulses with a varying pulse strength from one pulse to another in the series, according to a fixed or varying pattern

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable for generating a series of body pulses with a varying pulse strength from one pulse to another in the series according to a predetermined algorithm.

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable with carrier frequencies including near infrared, far infrared, visible, laser, ultra-violet, high frequency radio, ultrasonic, and combinations and modulations thereof.

In an exemplary embodiment, there is provided a device as defined, the source transmitter being operable to deliver the series of header and body pulses at pulsing speeds ranging from 10 to 10,000 KHz for pulses transmitted at visible light or infrared carrier frequencies, from 100 KHz to 10 GHz for pulses transmitted at radio carrier frequencies, and from 10 Hz to 100 KHz for pulses transmitted at ultra-sonic carrier frequencies.

In an exemplary embodiment, there is provided a device as, the preamble segment including unique identity including one or more unique data field code-words assigned to the source transmitter.

In an exemplary embodiment, there is provided a device as defined, wherein the signals are identifiable by at least one preamble or data field identity code, operational data field, time-synchronizing data code, and/or ranging code.

In an exemplary embodiment, there is provided a device as defined, the signal including a signal ranging code, wherein the different versions of the pulse pattern are identifiable using variable radiated signal strength that is varied in a sequence which includes the actual data code.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is affixed to a pointing device and the electronic circuit is coupled with an input device operatively associated with a personal computer having a display device and such that the pointing device is operable to move a cursor on the display device.

In an exemplary embodiment, there is provided a device as defined, the source transmitter including a carrier code generator to generate a carrier waveform, a signal code generator to generate a signal waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including an identity code waveform and a data field code waveform together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate an encryption waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including a identity code waveform, a data field code waveform and/or an encryption waveform together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a ranging segment waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including a identity code waveform, a data field code waveform an encryption waveform, and/or a ranging segment waveform, together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x)=x, where R(x) is a power level, and where x is a pulse number which increases from zero to N, and N is a maximum power level.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x)=N−x, where R(x) is a power level, and where x is a pulse number which increases from zero to N, and N is a maximum power level.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x) as an increasing and/or decreasing, nonlinear and/or linear range-code, or an algorithm carrying out one or more subroutines to select or identify elements of the ranging segment waveform.

In an exemplary embodiment, there is provided a device as defined, the processor communicating with a power level controller, the carrier code generator, the signal code generator and the power level controller communicating with an emitter for emitting the signal.

In an exemplary embodiment, there is provided a device as defined, the power level controller configured to set a corresponding power level for each pulse in the ranging segment being according to instructions received from the processor.

In an exemplary embodiment, there is provided a device as defined, further comprising a memory for storing values of R(x), the values accessible to the processor and/or the power level controller.

In an exemplary embodiment, there is provided a device as defined, the signal including a signal strength code for receiving the amplitude information, a transmitter detector code for determining an identity of the transmitting device, a data signal extractor code for determining any specific data embedded in the radio signal respective to the transmitting device.

In an exemplary embodiment, there is provided a device as defined, the source transmitter including a power supply, a signal strength code generator, a carrier code generator interconnected by a signal modulator; the transmitter device further comprising a pulse shaping module for shaping a waveform output from the signal modulator; the transmitter device further comprising a wave emitter connected to an output of the pulse shaping modulator for outputting the signal.

In an exemplary embodiment, there is provided a device as defined, the wave emitter including an infra-red or light emitting diode, a laser emitter, a radio antenna and/or a piezo-coupler.

In an exemplary embodiment, there is provided a device as defined, the signal code generator being coupled to a microprocessor.

In an exemplary embodiment, there is provided a device as defined, the signal code generator further comprising a switch for selectively changing the signal strength code to another code when the switch is activated.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter device is incorporated into a light switch, a computer interface including a mouse, a tilt-joystick, a pointer controller, a six-degree-of-freedom interface, or a gesture interface.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is incorporated into a surgical instrument.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is incorporated into an industrial robot, a golf mat, or speed measurement device.

In an exemplary embodiment, there is provided a signal receiving device for receiving a signal from a signal transmitting device for determining a position and/or range of a remote location relative to a source location, comprising a receiver to be located at the remote location, the receiver operable to receive the signal, the signal including a train of pulses forming a data stream representative of a message, the train of pulses including a series of preamble pulses having a common carrier frequency and a relatively constant pulse strength, the series of preamble pulses having a pattern corresponding to a predetermined preamble segment of the message and a series of body pulses, the body pulses having a common carrier frequency with the header pulses and representative of a body segment of the message, each of the body pulses having a pulse strength, the pulse strength varying across the series of body pulses in a predetermined pulse strength pattern, the receiver being operable to identify the body pulses received in the train of pulses above a predetermined body pulse strength threshold value.

In an exemplary embodiment, there is provided a device as defined, the receiver being operable to count body pulses received in the train of pulses above the predetermined body pulse strength threshold value, the count indicative of the position and/or range.

In an exemplary embodiment, there is provided a device as defined, the preamble segment including unique identity including one or more unique data field code-words assigned to the source transmitter.

In an exemplary embodiment, there is provided a device as defined, wherein the signals are identifiable by at least one preamble or data field identity code, operational data field, time-synchronizing data code, and/or ranging code.

In an exemplary embodiment, there is provided a device as defined, the signal including a signal ranging code, wherein the different versions of the pulse pattern are identifiable using variable radiated signal strength that is varied in a sequence which includes the actual data code.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is affixed to a pointing device and the electronic circuit is coupled with an input device operatively associated with a personal computer having a display device and such that the pointing device is operable to move a cursor on the display device.

In an exemplary embodiment, there is provided a device as defined, the source transmitter including a carrier code generator to generate a carrier waveform, a signal code generator to generate a signal waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including an identity code waveform and a data field code waveform together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate an encryption waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including a identity code waveform, a data field code waveform and/or an encryption waveform together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a ranging segment waveform.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform, including a identity code waveform, a data field code waveform an encryption waveform, and/or a ranging segment waveform, together or in succession.

In an exemplary embodiment, there is provided a device as defined, the signal code generator configured to generate a signal waveform.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x)=x, where R(x) is a power level, and where x is a pulse number which increases from zero to N, and N is a maximum power level.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x)=N-x, where R(x) is a power level, and where x is a pulse number which increases from zero to N, and N is a maximum power level.

In an exemplary embodiment, there is provided a device as defined, further comprising a processor, the processor configured to control the generation of a signal waveform including a ranging segment waveform, according to a power function, R(x) as an increasing and/or decreasing, nonlinear and/or linear range-code, or an algorithm carrying out one or more subroutines to select or identify elements of the ranging segment waveform.

In an exemplary embodiment, there is provided a device as defined, the processor communicating with a power level controller, the carrier code generator, the signal code generator and the power level controller communicating with an emitter for emitting the signal.

In an exemplary embodiment, there is provided a device as defined, the power level controller configured to set a corresponding power level for each pulse in the ranging segment being according to instructions received from the processor.

In an exemplary embodiment, there is provided a device as defined, further comprising a memory for storing values of R(x), the values accessible to the processor and/or the power level controller.

In an exemplary embodiment, there is provided a device as defined, the signal including a signal strength code for receiving the amplitude information, a transmitter detector code for determining an identity of the transmitting device, a data signal extractor code for determining any specific data embedded in the radio signal respective to the transmitting device.

In an exemplary embodiment, there is provided a device as defined, the source transmitter including a power supply, a signal strength code generator, a carrier code generator interconnected by a signal modulator; the transmitter device further comprising a pulse shaping module for shaping a waveform output from the signal modulator; the transmitter device further comprising a wave emitter connected to an output of the pulse shaping modulator for outputting the signal.

In an exemplary embodiment, there is provided a device as defined, the wave emitter including an infra-red or light emitting diode, a laser emitter, a radio antenna and/or a piezo-coupler.

In an exemplary embodiment, there is provided a device as defined, the signal code generator being coupled to a microprocessor.

In an exemplary embodiment, there is provided a device as defined, the signal code generator further comprising a switch for selectively changing the signal strength code to another code when the switch is activated.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter device is incorporated into a light switch, a computer interface including a mouse, a tilt-joystick, a pointer controller, a six-degree-of-freedom interface, or a gesture interface.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is incorporated into a surgical instrument.

In an exemplary embodiment, there is provided a device as defined, wherein the transmitter is incorporated into an industrial robot, a golf mat, or speed measurement device.

In an exemplary embodiment, there is provided a system for range finding between a signal transmitter and a signal receiver comprising:

-   -   a signal transmitter operable to transmit a ranging signal         having train of pulses forming a data stream representing a         ranging message including a series of preamble pulses having a         common carrier frequency and a relatively constant pulse         strength, the series of preamble pulses having a pattern         corresponding to a predetermined preamble segment of the         message, the data stream including a series of body pulses         representative of a body segment of the message, the body pulses         having a common carrier frequency with the header pulses, each         of the body pulses having a pulse strength, the pulse strength         varying across the series body pulses in a predetermined pulse         strength pattern,     -   one or more signal receivers to be located at the remote         location, the receiver operable to receive the train of pulses;     -   one or more signal processors, operable to communicate with the         receivers to identify the body pulses received in the train of         pulses above a predetermined body pulse strength threshold value         and to associate the body pulses received in the train of pulses         above a predetermined body pulse strength threshold value with a         range value.

In an exemplary embodiment, there is provided a system for range finding between a signal transmitter and a signal receiver comprising:

-   -   a plurality of signal transmitters, each operable to transmit a         ranging signal having a corresponding train of pulses forming a         data stream representing a ranging message including a series of         preamble pulses having a common carrier frequency and a         relatively constant pulse strength, the series of preamble         pulses having a pattern corresponding to a predetermined         preamble segment of the message, each preamble segment including         data representative of an identity of the corresponding signal         transmitter, the data stream including a series of body pulses         representative of a body segment of the message, the body pulses         having a common carrier frequency with the preamble pulses, each         of the body pulses having a pulse strength, the pulse strength         varying across the series of body pulses in a predetermined         pulse strength pattern,     -   one or more signal receivers to be located at or near the remote         location, the receiver operable to receive the train of pulses;     -   one or more signal processors, operable to communicate with the         receivers to identify the body pulses received in the train of         pulses above a predetermined body pulse strength threshold value         and to associate the body pulses received in the train of pulses         above a predetermined body pulse strength threshold value with a         range value.

In an exemplary embodiment, there is provided a system as defined, the one or more signal processors operable to count the body ulses received in the train of pulses above the predetermined body pulse strength threshold value, the count value being representative of the range value.

In an exemplary embodiment, there is provided a system as defined the signal transmitters including a first signal transmitter, the one or more receivers including a first receiver located proximal to the first signal transmitter and a second receiver located distal to the first signal transmitter, the first receiver achieving a higher count value than the second receiver.

In an exemplary embodiment, there is provided a system as defined, the signal transmitters including a first signal transmitter, the one or more receivers including a first receiver to generate a first count value, the first receiver count value being reduced with increasing distance between the first signal transmitter and the first receiver.

In an exemplary embodiment, there is provided a system as defined, the signal transmitters includes a first transmitter and a second transmitter, each configured to transmit respective first and second ranging signals, each including a unique preamble segment, the one or more signal receivers including a first receiver and a second receiver at least one of signal processors being operable to communicate with the first receiver to associate the body pulses received in the train of pulses from the first transmitter above a predetermined body pulse strength threshold value with a first range value, the second signal processor operable to communicate with the second receiver to associate the body pulses received in the train of pulses from the second transmitter above a predetermined body pulse strength threshold value with a second range value.

In an exemplary embodiment, there is provided a system as defined, the signal processors including a first signal processor communicating with the first receiver and a second signal processor communicating with the second processor.

In an exemplary embodiment, there is provided a system as defined, further comprising at least one reflective surface between the signal transmitters and signal receivers and, for each signal receiver, the corresponding range value relating to the distance between the signal transmitter and the reflective surface added to the distance between the reflective surface and the receiver.

In an exemplary embodiment, there is provided a method of finding range between a source location and a remote location, comprising:

-   -   issuing, from the source location, a train of pulses forming a         data stream representing a message and including a series of         preamble pulses having a common carrier frequency and a         relatively constant pulse strength, the series of preamble         pulses having a pattern corresponding to a predetermined         preamble segment of the message, the data stream including a         series of body pulses representative of a body segment of the         message, the body pulses having a common carrier frequency with         the preamble pulses, each of the body pulses having a pulse         strength, the pulse strength varying across the series of body         pulses in a predetermined pulse strength pattern,     -   receiving, at the remote location, the train of pulses;     -   identifying the body pulses received in the train of pulses         above a predetermined body pulse strength threshold value; and     -   associating the train of pulses above a predetermined body pulse         strength threshold value with a range value between the source         and remote locations.     -   In an exemplary embodiment, there is provided a method of         finding range between a plurality of source locations and a         plurality of remote locations, comprising:     -   issuing, from each source location, a ranging signal including a         train of pulses forming a data stream representing a ranging         message and including a series of preamble pulses, the preamble         pulses having a common carrier frequency and a relatively         constant pulse strength, the series of preamble pulses having a         pattern corresponding to a predetermined preamble segment of the         message and unique to the source location, the data stream         including a series of body pulses representative of a body         segment of the message, the body pulses having a common carrier         frequency with the header pulses, each of the body pulses having         a pulse strength, the pulse strength varying across the series         of body pulses in a predetermined pulse strength pattern;     -   receiving the ranging signal at each remote location;     -   identifying, in each ranging signal, the body pulses received in         the train of pulses above a predetermined body pulse strength         threshold value; and     -   associating, for reach ranging signal, the train of pulses above         a predetermined body pulse strength threshold value with a range         value between the respective source and remote locations.

In an exemplary embodiment, there is provided a system for sensing position, comprising a transmitter operable to transmit a signal including a train of pulses with varying pulse strength along the train to form a pulse pattern, a plurality of receivers in spaced relation relative to the transmitter and one another, each receiver operable to receive the signal with a different version of the pulse pattern according to the position of the receiver relative to the transmitter; and an electronic circuit coupled to the receiver and operable to determine a location of the transmitter, based on a comparison of the corresponding versions of the pulse pattern received by each receiver.

In an exemplary embodiment, there is provided a system as defined, further comprising at least one additional transmitter, each of the transmitters operable to transmit a signal having a unique identity, the electronic circuit further operable to distinguish each of the transmitters from the other based on the unique identity, the electronic circuit being further operable to determine a location of each of the transmitting devices substantially simultaneously.

In an exemplary embodiment, there is provided a system as defined, each receiver including a wave energy input device which is spaced from each of the wave energy input devices of the other receivers at a distance independent of the wavelength of the signal.

In an exemplary embodiment, there is provided a system as defined, the signals being based on a predetermined pulse strength coding scheme and/or a predetermined pulse-coding scheme.

In an exemplary embodiment, there is provided a system as defined, the signals including one or more groups of pulses.

In an exemplary embodiment, there is provided a system as defined, the unique identity including one or more unique data field code-words assigned to each transmitter.

In an exemplary embodiment, there is provided a system as defined, wherein the signals are identifiable by at least one preamble or data field identity code, operational data field, time-synchronizing data code, and/or ranging code.

In an exemplary embodiment, there is provided a system as defined, the signal including a signal ranging code, wherein the different versions of the pulse pattern are identifiable using variable radiated signal strength that is varied in a sequence which includes the actual data code.

In an exemplary embodiment, there is provided a system as defined, wherein the transmitter is affixed to a pointing device and the electronic circuit is coupled with an input device operatively associated with a personal computer having a display device and such that the pointing device is operable to move a cursor on the display device.

In an exemplary embodiment, there is provided a system as defined, wherein the pointing device includes at least one button for user actuation and the signals are based on what is available directly, coded into, and/or modulated in the preamble.

In an exemplary embodiment, there is provided a system as defined, the transmitter device including a power supply including at least one battery, solar cell, and/or coil.

In an exemplary embodiment, there is provided a system as defined, the coil being operable to receive energy from an EM powering field radiating proximal to the power supply.

In an exemplary embodiment, there is provided a system as defined, the coil operable to induce electrical energy from a magnetic field by mechanical motion.

In an exemplary embodiment,-The system comprising two receivers and the location is expressed as a range and a variation in a single-dimension. In an exemplary embodiment, there is provided a system wherein at least one of the transmitters and at least one of the receivers remain fixed during operation for the purpose of self calibrating.

In an exemplary embodiment, there is provided a system comprising at least three of the receivers arranged in a first triangular grouping and at least three receivers grouped in a second grouping, the electronic circuit being operable to receive a first input from the first grouping and further operable to receive a second input from a second grouping, the groupings having only one of the receivers in common, the electronic circuit further operable to determine a range and at least two dimensional position of the transmitter based on a comparison of the first input and the second input.

In an exemplary embodiment, there is provided a system comprising at least four receiver units arranged in a rectangular format, the electronic circuit operable to receive four separate inputs from four respective pairings of two receivers each, the electronic circuit further operable to determine a three dimensional position of the transmitting device based on a comparison of the separate inputs.

In an exemplary embodiment, there is provided a system, wherein the rectangular format is a plane arranged around a periphery of a computer display.

In an exemplary embodiment, there is provided a system, comprising at least eight receiver units arranged in a cube, the electronic circuit operable to receive eight separate inputs from eight respective pairings of the eight receiver units in groups of two, the electronic circuit further operable to determine a three dimensional position of the transmitting device in relation to the cube based on a comparison of the separate inputs.

In an exemplary embodiment, there is provided a system, the electronic circuit including at least a multichannel channel processor connected to the receivers, a detector and a position calculator connected to the multiple channel processor, and an output device for presenting the location to an electronic peripheral attachable to the output device.

In an exemplary embodiment, there is provided a system, the electronic peripheral being a general purpose computer and a display device, the general purpose computer being configured to present a representation of the location on the display device.

In an exemplary embodiment, there is provided a system, the multiple channel processor including a digital signal receiver coupled to the receiver unit to receive input therefrom, the channel processor further comprising a detector, a band-pass filter, an automatic gain controller, and/or a threshold programmable comparator; the channel processor further comprising a signal strength data calculator for determining pulse count information from the received digital signals and for outputting the pulse count information

In an exemplary embodiment, there is provided a system, the signal including a signal strength code for receiving the amplitude information, a transmitter detector code for determining an identity of the transmitting device, a data signal extractor code for determining any specific data embedded in the radio signal respective to the transmitting device.

In an exemplary embodiment, there is provided a system, the transmitter including a power supply, a signal strength code generator, a carrier code generator interconnected by a signal modulator; the transmitter device further comprising a pulse shaping module for shaping a waveform output from the signal modulator; the transmitter device further comprising a wave emitter connected to an output of the pulse shaping modulator for outputting the signal.

In an exemplary embodiment, there is provided a system, the wave emitter including an infra-red or light emitting diode, a laser emitter, a radio antenna and/or a piezo-coupler.

In an exemplary embodiment, there is provided a system, the signal code generator being coupled to a microprocessor.

In an exemplary embodiment, there is provided a system, the signal code generator further comprising a switch for selectively changing the signal strength code to another code when the switch is activated.

In an exemplary embodiment, there is provided a system wherein the transmitter device is incorporated into a computer interface including a mouse, a tilt-joystick, a pointer controller, a six-degree-of-freedom interface, or a gesture interface.

In an exemplary embodiment, there is provided a system wherein, the transmitter is incorporated into a surgical instrument.

In an exemplary embodiment, there is provided a system wherein the transmitter is incorporated into an industrial robot, a golf mat, or speed measurement device.

In an exemplary embodiment, there is provided a system, wherein each receiver includes a wave energy input device and a receiver element.

In an exemplary embodiment, there is provided a system, the wave energy input device including a diode, antenna, or piezo-coupler.

In an exemplary embodiment, there is provided a system, wherein the receiver element comprises a low-noise amplifier connected to the wave energy input device, a band-pass filter connected to the low-noise amplifier, and an automatic gain controller circuit connected to the band-pass filter for outputting to the electronic circuit, and feeding back to the low-noise amplifier, and a programmable threshold comparator, output to a pulse counting processor.

In an exemplary embodiment, there is provided a transmitting device operable to transmit a signal, the transmitter for communication with one or more receiver units in spaced relation to the transmitter and an electronic circuit connected to at least one receiver to receive a radio signal in order to determine a range of the transmitting device according to a variation in signal strength of the radio signal over a predetermined sensing time period.

In an exemplary embodiment, there is provided a receiver unit operable to receive a signal transmitted from a transmitting device; the receiver unit for placement in spaced relation to another substantially identical receiver unit such that each receiver unit is operable to receive a different version of the signal, the receiver unit for connection to an electronic circuit connectable to both of the receiver units, the electronic circuit being operable to determine a location of the signal transmitting device in relation to the receiver units based on a comparison between each the different version of the signal.

In an exemplary embodiment, there is provided a method for sensing position comprising receiving a first signal from a first transmitting device, the version including a body segment therein with a first version of a train of pulses, ; receiving a second signal from the first transmitting device, the second segment including the body segment with a second version of the train of pulses; and determining a location of the transmitting device based on a comparison of the first version and the second version.

In an exemplary embodiment, there is provided a method further comprising the steps of receiving a first signal from a second transmitting device, the first signal including a body segment with a first version of a train of pulses, the second signal being sent at a different time to the first signal; receiving a second signal from the second transmitting device, the second signal including a body segment having a second version of the train of pulses,; determining a range and/or location of the first transmitting device based on a comparison of the first and second versions of second signal.

In an exemplary embodiment, there is provided a method, the receiving steps including providing a wave energy input device to receive the signal and an additional wave energy input device to receive the additional signal, the wave energy input devices being spaced apart at a fixed distance independent to the wavelength of the signal and the additional signal.

In an exemplary embodiment, there is provided a method, wherein the signal and additional signal are based on a code and signal strength variable algorithm.

In an exemplary embodiment, there is provided a method, wherein the simultaneous pulse code and signal strength variable algorithm include an incrementally ramped sequence, a decrementally ramped sequence, and/or a randomly selected strength code.

In an exemplary embodiment, there is provided a method, the algorithm based on a code allowing for a unique signal strength pattern of the signal to be identified and a unique range to be calculated.

In an exemplary embodiment, there is provided a method, wherein different versions of the signal are identifiable via a different pulsed code that are unique code-words assigned to each of the transmitting devices.

In an exemplary embodiment, there is provided a method wherein the signal is a radio signal, and the different versions of the signal are identifiable via a different signal strength code and between the versions.

In an exemplary embodiment, there is provided a method wherein the different versions of the radio signal are identifiable using at least one of a radiated signal strength coding technique and a pulse-coding technique.

In an exemplary embodiment, there is provided a method, further comprising the steps of providing the transmitting device on a pointing device and providing the electronic circuit in a coupling with an input device on a personal computer having a display device and such that the pointing device is operable to move a cursor on the display device.

In an exemplary embodiment, there is provided a method, wherein the pointing device includes at least one button for user actuation and the signal is based on data formatted in the preamble or ranging codeword, and wherein an actuation of the button is transmitted to the receiver units via altering the codeword for at least one ranging period.

In an exemplary embodiment, there is provided a method wherein a power supply incorporated into the transmitting device is selected from the group including a battery, a solar cell, a coil operable to receive energy from an EM powering field radiating proximal to the power supply, or a coil operable to induce electrical energy from a magnetic field by mechanical motion.

In an exemplary embodiment, there is provided a method the unique identity of different transmitting devices is effected through unique data field codes in each transmitting device.

In an exemplary embodiment, there is provided a system for sensing position comprising at least two transmitting devices each operable to transmit a unique radio signal; at least two receiver units-in spaced relation to each other and each operable to receive a different version of each signals, the receiver units comprising a wave energy input device and a receiver element; and, an electronic circuit coupled to the receiver element and operable to substantially simultaneously determine a location of each of the transmitting devices in relation to the receiver units by distinguishing the transmitting devices based on the unique data field and based on a comparison between each the different version of each respective signal.

In an exemplary embodiment, there is provided a system wherein the wave energy input device associated with each of the receiver units are spaced apart at a distance independent of the wavelength of the radio signal.

In an exemplary embodiment, there is provided a system wherein the signals include unique data field code-words assigned to each of the transmitting devices.

In an exemplary embodiment, there is provided a system wherein the different versions of the signal are identifiable using at least one of a radiated signal strength technique and a pulse-coding technique.

In an exemplary embodiment, there is provided a transmitting system for identifying and locating one or more transmitting devices in a transmitting area, comprising at least one transmitting means for transmitting a signal on a propagating medium throughout the transmitting area and coupling the signal to the propagating medium, the transmitting signal comprising a combined pulsed coding component and a signal strength coding component; each transmitted signal including a unique code identifying the respective device; signal receiving means associated with the transmitting area and connected to the propagating medium to receive at least one transmitting signal from the one or more transmitting devices; means for decoding the transmitting signal to identify at least one of the transmitting devices, and further including means for determining the position of at least one of the transmitting devices in the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein the one or more transmitting devices are active devices.

In an exemplary embodiment, there is provided a transmitting system, further including means for generating an energy field in the propagating medium within the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein, the energy field includes a signal strength varying component.

In an exemplary embodiment, there is provided a transmitting-system, wherein each of the transmitting devices includes a means to receive a signal through the energy field for active transmitting device operation.

In an exemplary embodiment, there is provided a transmitting system, wherein the energy field includes an EM field, a visible light energy field, a magnetic field, or an acoustic field.

In an exemplary embodiment, there is provided a transmitting system, wherein the propagating medium comprises free space in the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein the propagating medium comprises an occlusion in the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein the signal-strength variation and pulse coding represents a unique strength level coding and/or range coding.

In an exemplary embodiment, there is provided a transmitting system, wherein the signal strength coding is a forward-ramped or reverse ramped code.

In an exemplary embodiment, there is provided a transmitting system. wherein the pulsed-coding signal component modulation is Amplitude Shift Keying (ASK).

In an exemplary embodiment, there is provided a transmitting system, wherein the pulsed-coding signal component modulation is Frequency Shift Keying (FSK)

In an exemplary embodiment, there is provided a transmitting system, wherein the unique codes of the one or more transmitting devices are in the data field.

In an exemplary embodiment, there is provided a transmitting system, wherein the one or more transmitting devices are active devices that generate a transmitting signal.

In an exemplary embodiment, there is provided a transmitting system, wherein the transmitting signal is an electromagnetic signal.

In an exemplary embodiment, there is provided a transmitting system, wherein the propagating medium comprises an EM reflecting and conducting layer in the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein the signal receiver means includes a plurality of spaced-apart signal receivers; and the means for determining the position of each of the one or more transmitting devices includes means for calculating the received signal strengths of the radio transmitting signals passing through the propagating medium to the plurality of signal receivers.

In an exemplary embodiment, there is provided a transmitting system, wherein the means for decoding and identifying each of the one or more transmitting devices includes a means for comparing and filtering-out received transmitting signals to stored identifying codes of the one or more transmitting devices. In an exemplary embodiment, there is provided a transmitting system for identifying and locating one or more transmitting devices in a transmitting range, including: a signal propagating medium for conducting signals throughout the transmitting area; at least one of the transmitting devices including means for producing a transmitting signal and coupling the signal to the propagating medium; the transmitting signal comprising a signal strength coding and/or a pulse coding; each transmitting signal including a unique code identifying the respective transmitting device; signal receiving means associated with the transmitting area and connected to the propagating medium to receive at least one transmitting signals from the one or more transmitting devices; a means for decoding the transmitting signals to identify the one or more transmitting devices; and, means for determining the position of the one or more transmitting devices in the transmitting range.

In an exemplary embodiment, there is provided a transmitting system, wherein a portion of the one or more transmitting devices are active devices that generate a transmitting signal, and another portion of the one or more transmitting devices are active transceiver devices.

In an exemplary embodiment, there is provided a system for sensing a location of at least two transmitters, said system comprising at least two transmitters, each transmitter being operable to transmit a unique signal, at least two receivers in spaced relation to one another and to said transmitters, said at least two receivers each being operable to receive a different version of each of said signals, said receivers having a wave energy input device and a receiving element, and electronic circuit being coupled to said receiving element and being operable to substantially simultaneously determine a location of each of said transmitters in relation to said receivers by distinguishing said transmitters based on a unique data field, and based on a comparison between each of said different versions of each signal.

In an exemplary embodiment, there is provided a system for sensing a location of a transmitter, said transmitter being Construed to emit a peculiar signal, said receiver being operable to receive said peculiar signal and to identify said transmitter based on said peculiar signal, an electric circuit coupled to said receiver and being operable to determine a location of said transmitter in relation to said receiver based on properties of said signal.

In an exemplary embodiment, there is provided a system for sensing position comprising: (a a transmitter operable to transmit a pulsed wave oriented signal with a signal strength variation; (b) at least one receiver placed in spaced relation between said transmitter and said receiver; (c) said transmitter simultaneously sending a timed burst pattern and a power burst pattern; (d) at least one additional receiver, each receiver being operable to receive a different version of said signal; and (e) an electronic circuit coupled to said receivers and operable to determine a position of said transmitter in relation to said receivers based on a comparison between each version of said signal.

In an exemplary embodiment, there is provided a system as claimed in, wherein there is at least one additional transmitter, each of the transmitters being operable to transmit a signal with an identity and a signal strength variation: (a) said electronic circuit being further operable to distinguish each of the transmitters from the other transmitters based on a received identity signal strength variation; and (b) said electronic circuit being operable to determine a location of said transmitters substantially simultaneously.

In an exemplary embodiment, there is provided a system for sensing a position comprising a plurality of transmitters, each transmitter being operable to transmit a pulsed wave oriented signal that is sent simultaneously as a timed burst pattern and a power burst pattern, the signal from each transmitter being distinguishable from said signals of each of the other transmitters, there being a plurality of receivers, each receiver being operable to receive a different version of said signals from said transmitters, an electronic circuit coupled to said receivers and being operable to determine a location of each of the said transmitters in relation to said receivers based on a comparison between different versions of said signals.

In an exemplary embodiment, there is provided a system for detecting a range value between two locations, comprising a transmitter associated with a first location and a receiver associated with a second location, the transmitter operable to emit a train of pulses arranged in identifiable groups, each group including a number of pulses that vary in discreet values of signal strength, the receiver being operable between an inactive condition and an active condition, if the strength is greater than a known threshold, and not active otherwise.

In an exemplary embodiment, there is provided a system for detecting a range value between two locations, comprising a transmitter associated with a first location and a receiver associated with a second location, the transmitter operable to emit a train of pulses arranged in identifiable groups, each group including a number of pulses that vary in discreet values of signal strength, the receiver being operable between an inactive condition and an active condition, ye if the strength is greater than a known threshold, and not active otherwise.

In an exemplary embodiment, there is provided a method for detecting a range value between two locations, comprising transmitting, at a first location, a train of pulses arranged in identifiable groups, each group including a number of pulses that vary in discreet values of signal strength, receiving the train of pulses at a second location, determining a minimum strength in the train of pulses, activating a detecting condition when the minimum strength exceeds a predetermined threshold.

In an exemplary embodiment, there is provided a method of determining a relative position of a first location relative to a second location, comprising emitting a signal from one of the locations, the signal carrying a sequence of pulses that vary in range as a set of discreet values of signal strength, receiving the signal from the other of the locations, measuring a minimum signal strength value from the signal and associating the minimum strength value with a corresponding relative position.

In an exemplary embodiment, there is provided a method as defined, further comprising providing a predetermined threshold for the minimum strength value, and adjusting the predetermined threshold.

In an exemplary embodiment, there is provided a method as defined, the step of associating including accessing a lookup table for a correlation between the minimum strength value and the corresponding relative position.

In an exemplary embodiment, there is provided a method as defined, the step of associating including accessing a predetermined converter function for each minimum strength value to generate a corresponding relative position value.

In an exemplary embodiment, there is provided a method as defined, further comprising the step of generating a signal waveform including a ranging segment waveform, according to a power function, R(x) as an increasing and/or decreasing, nonlinear and/or linear range-code, or an algorithm carrying out one or more subroutines to select or identify elements of the ranging segment waveform.

In an exemplary embodiment, there is provided a method as defined in any one of claims 49 to 56, 60 to 92 and 108 to 145, further comprising the step of generating a signal waveform including a ranging segment waveform, according to an algorithm carrying out one or more subroutines to select, identify, or quantify according to one or more power functions, elements of the ranging segment waveform.

The above-described embodiments of the invention are intended to be examples of the present invention and alterations and modifications may be effected thereto, by those of skill in the art, without departing from the scope of the invention which is defined solely by the claims appended hereto.

FIG. 18 shows a beacon device at 10 with at least one, in this case a plurality of emitters 12 which are distributed along an emitter surface 14. Each emitter 12 is configured to emit at least one locating signal 16 along a unique axis 18. The locating signal 16 includes, at least in part, a plurality of discrete pulses in a train of pulses. The locating signal, in particular the train of pulses, is described in further detail in published PCT application PCT/CA2010/000095, which is incorporated herein by reference.

Also shown in FIG. 18 is a device 20 for locating the beacon device 10, by identifying one or more of the emitters 12. The locating device 20 has a plurality of spaced receivers 22, arranged relative to a sensing location 24, to receive at least one locating signal 16. In this case, the spaced receivers 22 are distributed an arc relative to the sensing location 24, though they may be distributed along, or grouped in, one or more linear or curvilinear patterns or clusters. Each of the receivers 22 has an angular position value which is associated with a designated angle of the receiver relative to a reference axis 25 of the sensing location 24. For instance, receivers 22 a and 22 b have respective angular positions represented by corresponding angles α and β relative to the reference axis 25.

In this case, each emitter 12 is configured to emit a locating signal 16 including, at least in part, a plurality of discrete pulses in at least one train of pulses. The locating device includes at least one processor 30, which may be integrated within the functions of, be provided by or be in communication with a computer 32, local to the locating device or accessible thereto via a computer network. (Alternatively, a processor 30 may be associated with each receiver 22.) In the case of the device 20, the processor 30 may be configured to process the locating signal received at each receiver 22 to form a pulse value in relation to a count of pulses above a pulse strength threshold. In the case where the beacon device has a single emitter 12, the processor 30 is configured to correlate the pulse value with the angular position value to form a pulse count value, to identify an aligned receiver associated with a maximum pulse count value as the receiver aligned with the emitter; and to attribute, for example, the angular position value of the aligned receiver, in this case receiver 22 a, to an angular location value of the emitter relative to the reference axis. For cases where the beacon device 10 has a plurality of emitters 12, as shown in FIG. 1 , the emitters may be configured to identify themselves to the receivers 22, and thus enable the one or more processors 30 to discriminate between signals from each of them, as will be described below.

Among other approaches, responsive to the receivers 22, the processor 30 may be configured to determine the angular location of an emitter 12, and thus the beacon device 10, to detect the maximum pulse count value, for example according to:

Maximum Pulse Count Value=SUM[A[i]*E[i]]/SUM[E[i]], for i=1, N

for “i” being the index of each receiver, and N is the total number of receivers;

A[i]is the angular position value of the receiver “i”; and

E[i]is the pulse count value of the receiver “i”.

Thus, the Maximum Pulse Count Value corresponds to an angular position value and may correspond, in some cases, to the angular position of one of the receivers. In other cases, the Maximum Pulse Count Value may correspond to an interpolated or extrapolated position relative to the angular positions of two or more receivers.

This exemplary protocol involves counting pulses above the pulse strength threshold, which may be configured by the processor according to various conditions, such as the nature of the medium, the strength of the emitters, among others. For expected shorter ranges, or distances, between the emitters and the receivers, the threshold may be set at a higher level, and likewise set at a lower level for longer ranges. The emitters may be selected to provide a pulse strength that remains fixed during the course of operation and may be a factory set configuration. Alternatively, or in addition, the emitters 12 may be configured to provide an adjustable minimum strength of each pulse according to the pulse strength threshold.

The emitters 12 may also be configured to change the strength of each pulse from one pulse to another along the train of pulses. Doing so allows the processor 30 to attribute the maximum pulse count value to a range (or distance) value of the emitter relative to the sensing location.

In one example, the maximum pulse count value may be determined according to:

Maximum Pulse Count Value=MAX[E[i]], at A[k], for i=1, . . . , N,

where “i” is an index value corresponding to each receiver, and N is a total number of receivers,

b A[i]is the angular position value of the receiver “i”.

E[i]is the pulse count value of the receiver “i”.

“k” is the aligned receiver, and

A[k]is the angular location value.

FIG. 18 a shows a magnified view of the beacon device 10. FIG. 18 b illustrates an operational example of a method deployed by the processor 30 in the device 20. In this case, an emitter 14, for example from the beacon device 10, is shown to emit a locating signal 16, in this example an IR signal, which is strongest (at Emax) along its axis 18, and diminishes in signal strength with increasing angular deflection away from the axis 18 to a diminished value level (Edim), towards zero. Of course, this signal pattern or waveform of the emitter, giving rise to these relative signal strengths, will depend on the specifications of the emitter in question. For instance, emitters may be selected with wide-angle or narrow-angle emitted signal characteristics. Example infrared emitters include Vishay TSAL6100 beam=20 deg, Vishay TSAL6200 beam=34 deg, Vishay TSAL6400 beam=50 deg, OSRAM SFH4545, beam=10 deg, OSRAM SFH4646-Z, beam=20 deg, The term “beam” in this example, such as beam=20 deg, is intended to mean plus/minus deg on either side of the beam's boresight or central axis as an example. The beam angle is measured as the angle when the beam becomes half as strong as it is on the boresight (i.e. the angle of maximum strength).

The locating signal is to be received by a series of receivers 22, angularly positioned at corresponding known angles relative to a sensing axis 25 (relative to the sensing location 24). A cluster or group of the receivers 22 are shown as part of an array and extending, at least in part, along the periphery of a receiver surface shown schematically at 26, with the receivers in line-of-sight relationship with the emitter. Of course, the extent of the receiver distribution will depend on various factors for a particular application of the device and/or method. A central receiver 22 a of the cluster shown, has an axis which is essentially in line-of -sight, and in this case “head on”, with the emitter 14, and thus will receive relatively the strongest signal Pmax. Meanwhile, each of the receivers, which is laterally spaced from receiver 22 a, receives a progressively weaker signal, owing to the progressive angular deflection of the axis of those receivers relative to the axis of the emitter 12. In this illustration, the axis 18 of each of the receivers in the cluster is shown as integrated with the strength of the locating signal received. For instance, receivers 22 b and 22 c are shown to receive a diminished signal Pdim (of this cluster of receivers 22). With the angular position of the receivers known, by way of the reference axis 25, the receiver 22 a receiving locating signal Pmax can be identified as the aligned receiver, that is aligned with the axis of the emitter 14, and thus the relative position of the emitter can be associated with the angular position of receiver 22 a. Of course, FIG. 1 b illustrates a two dimensional condition and this approach may be extended to a three dimensional configuration when the receiver surface is oriented accordingly, as for example as shown in FIG. 20 , with three rows of receivers 22.

Further, in the case of multiple emitters as shown on the device 10 of FIG. 18 , the emitters 12 may be configured to emit an emitter identifier, which may be made or packaged in the locating signal, such as a series of pulses ahead of the train of pulses. Alternatively, the emitter identifier may be emitted in an emitter identifier signal which is different from the locating signal. For instance, the emitter identifier signal may be conveyed in a signal over a wireless channel between the beacon device 10 and the locating device 20. The purpose of doing this is to send the wireless data ahead of the range-code so that it can be received by the appropriate receiver device, to synchronize and to identify the transmitting device ahead of the range-code so the receiver knows which device to associate the range and heading with.

The emitters 12, in this case, are configured to emit the train of pulses in a single burst or in a series of single bursts. During ongoing operation of the emitters 12 and receivers 22, the emitters are enabled to emit repeated trains of pulses in repeating single bursts.

In some cases, the emitters may be configured to integrate a location code in the emitter identifier. In some cases, the location code may be associated with a location value which may be accessed from an addressable network source and/or from memory as shown at 34.

The emitters 12 may be configured, in some exemplary embodiments, to emit the locating signal intermittently, continuously or following receipt of an interrogatory or synchronizing signal, as may be provided by interrogator 36.

In this case, the locating signal is an IR signal, though it may be deployed with a carrier frequency selected from the group comprising: near infrared, far infrared, visible, ultra-violet, high frequency radio, ultra-wideband radio, and ultrasonic.

Thus, as shown in FIG. 18 , the one or more emitters 12 may be integrated into a first object, in this case the beacon 10, while the locating device, or components or operative modules thereof, may be integrated into a second object, in this case the locating device 20. The second object may thus be configured to travel relative to, toward or away from the emitter 12 and, hence, the beacon 10. Further, if desired, the first object may be configured to travel relative to, toward or away from the second object.

In the case of the exemplary embodiment of FIG. 18 , the beacon device 10 is provided as a beacon ball to be carried by a user (or perhaps thrown, rolled and the like in other activities), and is configured to send locating signals, such as infrared (IR) signals to the locating device 20, in this case a toy object such as a toy robot, represented in this case, again, at 20 in FIG. 18 . The beacon ball 10, in one example, may be configured to function in a manner to attract the toy robot, hence to follow the user carrying the beacon ball. This technical activity gives the user the sensation that the toy robot is attracted to or attacking the user depending on the game-play required. Thus, the beacon ball 10 is configured to send the repeating IR signal using an even transmitting distribution of IR signals to provide effective locating signal coverage over the beacon ball outer surface, while the toy robot is configured to detect the same signal from any one of the emitters 12, to decode the communication data, and determine the range and heading of the emitter 12 and thus the beacon ball. However, there may be cases where the beacon ball device may provide a number of emitters 12 which provide different signals, for instance according to their location on the beacon ball, in order to establish a position or orientation of the beacon ball according to the pulses received by the corresponding local position (relative to the device itself) of the aligned emitter 12. FIG. 19 shows a variation in which a plurality of beacons 10 are shown, which are monitored by a common locating device 20.

Exemplary beacons of the present disclosure thus may be used in systems providing the means to determine location, positioning, and orientation of an object with respect to a beacon. Such systems may employ multiple active beacons that can provide a means to determine the location of an object in the environment. Such a system may also be configured to guide an object to a destination beacon, or to a location associated with or in relation to one or more such beacons, based on a plurality of receivers. Examples of this beaconing approach may be used to guide people with cell phones to a specific sales area in a mall or store, such as to provide directions to the cell phone user toward the store of interest, a robot or drone through and to a specific position within a building or household, or to guide a toy automatically to a destination beacon or to a coordinate position determined by a plurality of beacons. In other cases, such systems may provide location, positioning, and orientation of a beacon, for instance, relative to a locating device, for instance where a number of emitters distributed on the beacon surface are identifiable and a maximum pulse count value from an identifiable emitter indicates that the surface neighboring the emitter is facing the locating device.

Exemplary systems of the present disclosure may be configured to be capable of determining spatial location which may be based on low cost infrared equipped devices and infrared beacons. Outdoor situated infrared beacons that broadcast a unique identification number may be located, with improved accuracy, outdoors using differential GPS in a one-time procedure (since the location of the stationary beacon may in some cases only need to be determined once, when situated on an immovable structure.) Indoor situated infrared beacons that broadcast a unique identification number may be more precisely located indoors using architectural plans in combination with accurate survey maps or external GPS of the building, by associating the unique identification number with a specific location value for each beacon. Relative location may also be provided in improved configurations. For example, each room in an office building may be equipped with a unique identification number, and geographic references may be made with respect to room numbers rather than a three dimensional (x,y,z) absolute position. Whether absolute or relative positioning is used, the location information may be linked to the unique identification number available over the Internet or through local database spatial localization services. In operation, a portable computing device, equipped with an infrared receiver may receive the data signal from the infrared beacon, enabling increased precision determination of physical location, both indoors or outdoors. In certain exemplary embodiments, a GPS receiver integrated with a portable computer may be used to roughly determine location, with more precise positioning being handled by reference to infrared beacons.

In an exemplary embodiment, a beacon device, of the present disclosure, may be integrated into conventional transmitter housings suitable for indoor or outdoor usage. The beacon may be a freely moving device with one or a plurality of transmitters affixed to the beacon frame, and/or fixed to a wall or ceiling, or the body of a fixed or moving structure. The infrared beacon may include a light source that is optionally attachable to lighting fixtures that supply electrical power at a determined voltage and a voltage converter electrically and physically connected to the light source. It may be necessary for the transmitting device to have a reduced supplied voltage. For indoor usage, electrical power is typically supplied at 110 Volts AC, and is converted to less than 5 or 6 volts DC by the voltage converter. For stand-alone usage, the transmitting device may be powered by a battery, or use electrically energy harvested by thermal, solar, vibration, or mechanical sources.

In an exemplary embodiment, a beacon in operation powered by a voltage converter, may continuously, intermittently, or in response to an interrogatory signal, broadcast a data signal as well as a range measurable signal. This data signal may be predetermined, and is typically a series of infrared pulses adhering to common transmittable IR carrier frequencies (like 38 KHz and 56 KHz). In certain embodiments, a microcontroller and oscillator may be provided to trigger the microcontroller to initiate the electrical pulse train resulting in broadcast of the data signal. Alternatively, a trigger circuit may be provided which is responsive to infrared, optical, physical (e.g. pushbutton or switch), or radio frequency input, alone or in combination with a microcontroller or oscillator circuit, to initiate broadcast of the data signal.

In an exemplary embodiment, an infrared receiver array is provided including common receiver array modules arranged in a symmetric spatial or angular pattern about the receiver device frame. The receiver elements may be typically arranged in a symmetric configuration to determine the range of the transmitter as well as the received heading or azimuth orientation angles. Each receiver element may be a complete infrared receiver module (like those used in standard TV's, for example a TSSP4038 developed by Vishay Microelectronics), or as a separate diode and infrared signal pre-processor circuit. All receiver elements may be electronically connected to a microprocessor to further process the positional coordinates and orientation angles. In general, the receiver elements may be configured to determine the range and angle of the incoming beacon signal by using a spaced and angled relationship between all receiver elements, to calculate the position coordinates of the beacon, relative to the receiver unit.

In some exemplary embodiments, a base unit may be provided that coordinates a receiver array including a plurality of receivers that receive the signals from the one or more emitters, to process the received signals and determine the one or more emitters, as a measured range or distance away from, and at a specific or designated angle relative to, the position and orientation of the receiver array.

In some exemplary embodiments, an emitter array including a plurality of emitters may transmit a signal that sends an identification of the transmitting unit, as well as a specific ranging “code” or characteristic that can be detected by the receivers. The ranging code is typically a burst of carrier modulated pulses that vary in amplitude or signal strength, that are further arranged in an incrementing or decrementing order. The ranging code may not be restricted to a ramped increment or decrement, as the code can also be a series of interleaved but amplitude varying pulses (see FIG. 22 d ). Another approach is to use a nonlinear ramped code of amplitude varying pulses that can be tailored to the range profile of interest, for example using a quadratic varying amplitude variation or a “J” shaped amplitude profile. Ranging or distance calculation may be determined at the receiver as a pulse width where the “high” pulse state occurs where the receiver diode is activated, and a “low” pulse state occurs where the receiver diode is not activated. The length of the received pulse or pulses in the pulse train may thus, in some cases, be used to determine the range, as a related value to a count of the pulses in the same time period.

In an exemplary embodiment, the receivers in the array may be affixed to a stationary or movable frame, structure, assembly, object or the like, for example positioned in a symmetric or asymmetric manner about a central location on a circuit board. The receivers, in this case, are configured to point outward so as to receive signals from a wide angle, as shown in FIG. 18 . Similarly, the array of receivers may be in a circle to determine a heading and azimuth angle from the emitter elements relative to a reference angle. Similarly the receivers may be positioned on a sphere to allow the receivers to determine spaced relation and angle relation coordinates in 3D using ranging, and heading and azimuth angles, as shown in FIG. 20 .

In an exemplary embodiment, a system may be provided with a plurality of infrared emitters and receivers as a combination of a plurality of emitter devices positioned in 3D, which emitters are configured to transmit signals that send identifying signals, functional command signals, and signals characterizing their range, possibly among other signals. The signals are received by one or more receivers which may be a symmetric or asymmetric array either as a partially curved surface containing multiple receivers or as a complete circle or spherical configuration, as shown in FIG. 20 . This figure illustrates a receiver configuration where receivers are arranged in a full circle in the plan view, and the heading angle is measured from zero to 360 degrees, but the elevation is only measured over a partial angle. Of course, the elevation angle detected may be increased with increasing “rings” of receivers on the spherical receiver surface 46.

In an exemplary embodiment, as shown in FIG. 21 , a beacon device 50 is located by a locating device 51. The beacon device 50 is operated by an emitter processor 52 and powered by an external power source 54 (such as a battery or the like), and switchable by a power/mode switch 56. The emitter processor 52 is configured to control the signaling of the emitter array 58 using a combination of data signaling and range bursts in the form of signals which propagate through the medium and are received substantially simultaneously to be processed by the receiver array 60 and specifically by receiver processor 62. The receiver array 60 is powered by a switch 64, and from an external power supply 65 (such as a battery or the like), and the receiver array 60 is automatically controlled by receiver processor 62 to operate configured autonomous functions, to communicate heading and range information internally or externally, that is to other functional units within the receiver or to other functional units within a larger system deploying range and heading detection activities. Output functions may be conveyed to output audio speakers 66 or external LED's, or using wireless devices 68 (Bluetooth, IRDA, WIFI, or the like), to output wireless data for external control purposes. The processor may also be responsive to various sensors 70 which may perform a variety of functions. Examples of such sensor functions are: the detection of ambient light, motion detection, temperature changes, vibration, and inertial sensing such as rotation or linear acceleration. The processor may also communicate with a drive train 72 to issue navigational commands in response to the detected angular location, and in some cases range, of the beacon 10.

The processor 62 may be configured to send audio instructions to a user carrying the locating device 51, such as in a cell phone, via the output audio speakers 66, as an output action, following the location of the beacon device 50. Such instructions may also be graphical instructions conveyed to the user by way of a display shown at 66a, by the use of directional arrows or a GPS-like-map interface or the like. Further, the audio instructions, via audio speakers 66, and/or graphical instructions by way of display 66a, may be delivered successively, in a GPS-like fashion, as the locating device moves relative to the beacon, or vice versa, as the locating device 51 updates the location of the beacon 50.

In some exemplary embodiments, multiple beacons may be configured to communicate identification data and ranging data to a receiving array using a communication protocol. The communication protocol may be a fixed structure preamble built into the communication signal structure followed or preceded by a ranging signal protocol as shown in FIGS. 22 a to 22 c, 22 d and 22 e . The communication protocol may also include a timing slotted protocol based on assigning beacons to a fixed time-slot based on a synchronized timing signal, as shown in FIGS. 22 a to 22 c . In FIG. 22 a , a communication protocol can include an identifier, real-time data, and any means of encrypting the data, and using a scheme for checking accuracy (such as a CRC check-sum for example). Examples of protocols for communication with pulse burst ranging are: using a communication preamble followed by a ranging signal burst arranged in a time-slotted configuration (see FIG. 22 b ); and arranging the ranging signal bursts in an order that indicates a binary signal (see FIG. 22 c ). Another example may include no synchronization altogether and multiple beacons are randomly transmitting to the receiver array. Applicable communication protocols may also be deployed using a sequence of binary coded ranging bursts arranged suitably in an order that conveys a binary sequence reminiscent of the identification or data signal transmitted from a specific beacon, as shown in figures, which may be used in conjunction with known protocol stacks for Bluetooth, and other wireless applications.

In some exemplary embodiments, multiple beacons may be configured to transmit communication data (identification, mode data) and ranging signal bursts in an asynchronous manner. Data types can be device identification information and the mode of the game-play (such as tracking, following, and “fire” states, as an example). In this case, a receiver may be configured to acquire beacon data and determine if the data received is valid and not corrupted by another beacon transmitting overtop at the same time. If communicated data is corrupted then the receiver may be configured to reject the data packet and corresponding ranging burst. Such a scheme is similar to an internet wireless or wired protocol for accepting or rejecting data packets.

In some exemplary embodiments, a synchronizing signal may be deployed to control the timing slotting of communication signals to send binary coded data, as well as ranging signal bursts. The synchronizing signals may, for example, be a series of fixed time pulses transmitted with a fixed delay apart from each other. The origin of such timing pulses may be from various sources that involve one single clocking mechanism. For example, a GPS receiver may be used to receive atomic clock timed pulses from a GPS satellite, or a Bluetooth radio may send regularly timed pulses through the wireless network. In either case a beacon device may be configured with a synchronizing pulse receiver thereby to enable the beacon to emit the synchronous pulses at specific time-slots according to the received synchronizing pulse. Similarly, the receiver array may also be configured with a synchronizing pulse receiver to acquire the synchronous pulses to allocate the receiver time-slots for each transmitting beacon.

Some exemplary embodiments may deploy a wireless method of communicating data to and from the beacon. This approach may not necessarily require that ranging bursts be encoded using a timed method. However, the wireless data packets may be sent at approximately the same time or in near-synchronous timing to the range burst, to allow the receiver array to associate the received identification data packet with the received ranging burst. This approach, though more complex and costly, may justify such costs by enabling identification data to be sent independently from the ranging bursts, which may in some cases enable more efficient or improved management of asynchronous operation of the beacon/receiver communication protocol.

Some exemplary embodiments may configure the structure of the receiver array to calculate the range of the incoming beacon signal, as shown in FIG. 22 d , the beacon may be configured to send out a burst of pulses that vary in signal strength, such as a ramped up signal, ramped down signal, or log-ramped signal or the like. Thus, the receiver array element may switch-on depending on the range. In this way, a train of received pulses may cause the receiver array element to switch-on for the duration of the train of pulses, where the first pulse in the train switches on the receiver array, and the last pulse is followed by the receiver array switching off.

An exemplary method for calculating the incoming range may be based on finding the maximum IR energy received for a specific range and heading as follows:

Range=MAX[E[i]], at A[k], for i=1, . . . , N

For “i” being the index of each receiver element, and N is the total number of receiver elements,

A[i]is the fixed angle of the receiver element “i”.

E[i]is the IR pulse energy received at receiver element “i”.

“k” is the receiver element that received the maximum energy, and A[k]is the angle of that receiver.

This calculation for the range may be deployed in cases when a plurality of receivers are used for the receiver array, such as ten or more, as an example. An example is shown in FIG. 23 , in which a number of receivers 22 are configured in a receiver array 60 to receive IR energy from a beacon device 50 with multiple emitters in an emitter array 58. In this example, a maximum range is a received pulse width of 60% of maximum power and the maximum energy is received at 220 deg. If a large number of receivers 22, such as 32 for example, are deployed, then a maximum range calculation may be based on a group of range energies that are normally distributed, where the maximum energy occurs at the maximum height of the normal curve, and this maximum occurs at an estimated heading angle of 220 deg (as shown in FIG. 23 ), which corresponds to a specific receiver.

FIGS. 24 a to 24 c illustrate an example of determining or estimating angle and range with fewer receiver elements (in this case eight receivers are used). In this case, each peak P is the peak of an associated receiver, with eight peaks (the two end half-peaks being counted as one peak) shown in FIG. 24 a . FIG. 24 b shows the example of a Pmax signal received by the central receiver, and the outer two Pdim signals, all above the threshold as shown. FIG. 24 c shows a curve or profile following a best fit analysis, indicating the estimated heading indicated by the location of the group, represented by arrow A, on the horizontal axis, with the range estimated by the height of the arrow A. In this case, arrow A does not align with a specific angular position of a receiver, but rather falls on a coordinate axis of angular points either adjacent one point for a receiver or between two points corresponding to adjacent receivers. In some exemplary embodiments, a receiver array may be configured to calculate heading (or bearing) angle of the incoming beacon signal, as shown in FIG. 20 . Similarly, the array structure of the receiver array may be configured to calculate an elevation angle of the incoming beacon signal. An exemplary method for calculating the incoming beacon heading angle may be based on a calculation for heading using a weighted average as follows:

Heading=SUM[A[i]*E[i,j]]/SUM[E[i,j]], for i=1, N

Elevation =SUM[B[j]*E[i,j]]/SUM[E[i,j]], for j=1, M

for (i,j) being the index of each receiver element, and N is the total number of heading receiver elements, and M is the total number of elevation receiver elements.

A[i]is the fixed heading angle of the receiver element “i”.

B[j]is the fixed elevation angle of the receiver element “j”.

E[i,j]is the IR pulse energy received at receiver element “(i,j)”.

Applying the above to FIG. 20 , the value of N for the number heading receiver elements equals the number of receiver elements in each ring, in this example sixteen, while the value of M for the elevation receiver elements equals the number of receiver elements in each vertical slice of the three rows, where each slice thus includes three receiver elements. In this case, then, each receiver element is a member of both the N and M groups.

Different approaches may be undertaken, involving formulae such as discrete interpolation methods, Gaussian curves, or the like may be used to estimate the maximum likelihood heading and elevation angles. They may be similar to a weighted average, and are thus included as a representation of this estimate.

In some exemplary embodiments, as shown in FIG. 25 , a single beacon or multiple beacons 76 may be placed at fixed locations with emitters mounted to beam signals in an angled manner away from the mounting surface. For example, FIG. 25 shows a room with three beacons 76 mounted on the wall ceiling or corners of the room with emitting elements covering a specific angle of illumination. With a single or multiple receiver array 78 located in the room and inside the illumination area of the multiple beacons 76, the receiver array 78 may be positioned with one or more beacons 76 actively transmitting data signals and ranging bursts. FIG. 25 illustrates that the receiver array 78 may process ranging data as R1, R2, R3, and heading data as H1, H2, H3 all which can be used to position, for example, a robot 80 in real-time.

It some exemplary embodiments, as shown in FIG. 26 , a receiver array based receiver vehicle 82 may be configured to determine a path to a programmed waypoint. By positioning a receiver array 84 with an angle and a range from the beacons 86, the receiver array processor may plot a waypoint P1, P2, P3 based on an existing position point as reference. Hence a sequence of additional waypoints may be plotted and sent to a guidance and control subsystem in the receiver vehicle 82 to plot movement to the plotted waypoint. Exemplary embodiments may be applied to robotics where directions are made to move the robot along a series of waypoints and verified using the beacon/receiver array approach to position the robot in time or real-time, as shown in FIG. 26 .

In some exemplary embodiments, guidance and control algorithms may be deployed to plot waypoints and allow for the accuracy improvement of a path along a waypoint. Waypoints to be determined in this case may involve the triangulation of range values, and add the estimated position based on heading and elevation angles also estimated using the receiver array. As shown in FIG. 27 , examples of such accuracy improvement may allow for the precise docking of a robot 88 to a docking station 90. This may be accomplished with relatively simple electronics involving two beacons 92 and a single receiver array 94, as shown in FIG. 27 .

While FIG. 18 shows beacon device at 10 at with at least one, in this case a plurality of emitters 12 which are distributed along an emitter surface 14, with each emitter 12 configured to emit at least one locating signal 16 along a unique axis 18, other exemplary embodiments may be deployed in which a plurality of emitters emit at least one locating signal along, for example, parallel axes. This may be particularly beneficial with each emitter being nonetheless uniquely identifiable.

Exemplary embodiments may be implemented, for example, for use as single or multiple beacons combined with one or more receiver arrays for any of the following, among other possible applications:

Target tracking for a fixed camera system for zooming/focus;

Target tracking for a mobile camera system for orienting/following;

Target tracking for toy applications;

Target tracking for sports applications (golf, baseball, training, etc.);

Hand-held devices that do 6DOF position and orientation, for 3D gaming as an example;

Tracking and positioning of badges and other transmitters for real-time people or asset tracking; and

Docking and positioning of robots.

The present disclosure describes what are considered to be practical exemplary embodiments. It is recognized, however, that departures may be made within the scope of the invention and that obvious modifications will occur to a person skilled in the art. With respect to the above description then, it is to be realized that the optimum dimensional relationships for the parts of the invention, to include variations in size, materials, shape, form, function and manner of operation, assembly and use, are deemed readily apparent and obvious to one skilled in the art, and all equivalent relationships to those illustrated in the drawings and described in the specification are intended to be encompassed by the present invention.

Therefore, the foregoing is considered as illustrative only of the principles of the invention. Further, since numerous modifications and changes may readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation shown and described, and accordingly, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention.

While a device or assembly and an accompanying method have been described for what are presently considered the exemplary embodiments, the invention is not so limited. To the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions. 

What is claimed is:
 1. A non-contact electrical toggle and directional switch, comprising: an electronic switching element; a distance detection element configured to sense two independent signal deflections at distances which mimic two user movements required to physically switch a manual toggle switch, wherein each deflection is detected by absolute and relative distance measurement relative to the distance detection element; wherein if the distance detection element detects one of the two signal deflections, the electronic switching element is configured to switch between a first and second electrical state in a manner which corresponds to how a manual toggle switch would operate in response to the user movement, wherein the first electrical state corresponds to an electrical on state and the second electrical state corresponds to an electrical off state.
 2. The non-contact electrical toggle switch of claim 1, wherein the distance detection element includes at least one emitter; and at least one detector.
 3. The non-contact electrical toggle switch of claim 2, wherein the distance detection element includes at least two detectors configured to be in substantial vertical alignment with one another.
 4. The non-contact electrical toggle switch of claim 3, wherein the at least one emitter is located between the at least two detectors.
 5. The non-contact electrical toggle switch of claim 1, wherein the distance detection element is configured to sense the two user movements within about one-half inch to about ten inches of the distance detection element.
 6. The non-contact electrical toggle switch of claim 1, further comprising: at least one visible switch state indicator which is configured to change state in manner to provide visual feedback to a user.
 7. The non-contact electrical toggle switch of claim 6, wherein the at least one visible switch state indicator comprises a pair of visible switch state indicators.
 8. The non-contact electrical toggle switch of claim 7, wherein each switch state indicator of the pair of switch state indicators comprises a light-emitting diode.
 9. The non-contact electrical toggle switch of claim 1, further comprising: an audio element configured to output an audible signal when one of the two user movements is detected by the motion detection element.
 10. The non-contact electrical toggle switch of claim 9, wherein the audible signal includes at least two independent audible signals which correspond to the two user movements.
 11. The non-contact electrical toggle switch of claim 1, wherein the distance detection element is configured to sense a substantially linear user movement that substantially emulates movement for changing a state of a manual toggle light switch.
 12. The non-contact electrical toggle switch of claim 1, wherein the two user movements include an upward “on” movement and a downward “off” movement.
 13. The non-contact electrical toggle switch of claim 1, wherein the detection element is further configured to detect signal deflections at distances which mimic a brightening user movement and a darkening dimming user movement which cause the electronic switching element to respond with changes in alternating current signal phase and changes in electrical current flow in response to the respective brightening and darkening dimming user movements.
 14. A device for locating a least one emitter, comprising an array of receivers configured in different angular positions about the array relative to a corresponding array location axis , to receive a signal from the emitter having at least one burst containing a train of pulses, and at least one processor configured to profile pulse count values at each receiver, from one receiver to another in the array in relation to their respective angular positions, to designate a maximum peak angular position associated with a maximum pulse count value, and to attribute the peak angular position to an angular emitter location.
 15. The device of claim 14, wherein the peak angular position is associated with a weighted average of pulse count values for a designated time.
 16. The device of claim 15, wherein the angular emitter location is linked to the peak angular position of the receiver registering a maximum pulse count value.
 17. The device of claim 16, wherein each pulse count value is associated with a count of pulses received by the receiver, according to successive changes of state of the receiver for each pulse received.
 18. The device of claim 17, wherein each pulse count value is associated with a time period during which the receiver remains continuously in an ON state for the train of received pulses.
 19. The device of claim 14, wherein the processor is configured to plot a path toward at least one designated waypoint, according to the angular emitter location, and to issue one or more instructions to initiate movement toward the waypoint.
 20. The device of claim 19, further comprising a drive train configured to move the device toward the waypoint.
 22. The device of claim 20, wherein the processor is configured to issue instructions for one or more autonomous functions internal or external to the device.
 23. The device of claim 21, wherein a plurality of the emitters is located at separate locations in an interior or exterior region, thereby to define an associated signal-receiving zone for the receiver array.
 24. The device of claim 1, wherein the device is selected from the group comprising; a motorized object; a motorized toy; a movable device; a robotic device; a robotic vacuum; a camera; a cell phone or smart phone; an appliance; a movable sport object from any one of archery, model aircraft, badminton, football, baseball, volleyball, rugby, tennis, basketball, golf, hockey, cricket, squash, tennis; a weapon and/or a drone; and an accessory to any one or more of a. to j. 